Script envio de emails ssmtp [RESOLVIDO]

1. Script envio de emails ssmtp [RESOLVIDO]

jose inacio da silva santos
inaciot

(usa CentOS)

Enviado em 11/03/2016 - 10:55h

Eai galerinha, sou novo aqui e novo com linux.

Mas ja tenho um trabalho complicado (para mim kk) pra fazer, se puderem me ajudar.

eu preciso criar um script que envie emails para diferentes destinos, exemplo: criaria um escript que busca todos os hostas de uma super net que estao ativos, sendo os que nao estao ativos ele me retorna e esses que nao estao ativos atrelar ao seus respectivos e-mail, minha ideia inicial seria criar um txt que armazena esses emails e fazer uma comparaçao no script para ver se batem, tipo " se o ip nao ativo for da rede 10.224.225. entao envia um email para exemplo@gmail.com", mas nao sei se minha logica esta certa eu ate comecei um script mais estou sem base do que fazer, se conseguirem me ajudar agradeço.




  


2. MELHOR RESPOSTA

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 11/03/2016 - 17:35h


Marcelo, desculpa se não fui muito claro, é o seguinte :
eu preciso escanear minha a rede por exemplo "fping -ag 10.224.225.0/23 > ipativos.txt
" os hosts que responderem irao se armazenar no arquivo ipativos.txt,
ir fazendo isso pra todos os outros ranges 10.225.224.0/23 10.224.8.0/23 etc, os hosts que nao estiverem ativos, como por exemplo os finais 8. 22. 26. 17. 33 , enviar um e-mail para para os "donos desse hosts", teria que criar um txt que tenha os e-mail relacionados com os IPS exemplo email.txt, para quando for verificar para qual e-mail for mandar ele bater, por exemplo
10.225.224.8 esta inativo, o e-mail atrelado ao "10.225.224." é o exemplo@gmail.com
ai ele envia esse e-mail para esse destino.
seria isso possível de se fazer, por que ao meu ver eu teria que criar um scrip que compare outros arquivos como o ipativos.txt para ver se o ip esta ativo, verificar o arquivo de e-mail pra ver pra quem deve mandar esse email.txt,
seria essa uma logica correta ?

--------------------------------------------------------------------------------
Ta desculpado .... :)
Seguinte, montei alguma coisa aqui .... De uma testada...


#!/bin/bash
MSG="HOST:$IP IS $STATUS
echo -e "\n scaneando a rede, aguarde . . . "
fping -r1 -g 10.224.225.0/24 >> SAIDA_FPING
sed -i 's/is //' SAIDA_FPING
sleep 2.5
while IFS=" " read -r IP STATUS;do
if [ $STATUS = "alive" ];then
printf "%(Data: %x%nHora: %X)T\n$MSG\n" >> ipativos.txt
elif [ $STATUS = "unreachable" ];then
#BUSCA O E-MAIL REFERENTE AO HOST, NO ARQUIVO "EMAIL_HOST.txt". SEPARADOR DE CAMPO (IFS) = ":"
#NO FORMATO IP:EMAIL (UM EM CADA LINHA)
EMAIL=$(awk '$1 ~ /\<'$ip'\>/ {printf "%s" ,$2}' EMAIL_HOST.txt)
printf "%(Data: %x%nHora: %X)T\n$MSG\n"|mutt -s "ASSUNTO" "$EMAIL"
fi
done < SAIDA_FPING


A lógica é a seguinte:
Armazena os resultados de FPING em SAIDA_FPING
Depois, lê o referido arquivo.

SE: STATUS = alive
Insere no ARQUIVO >> ipativos.txt

SE: STATUS = unreachable
BUSCA O E-MAIL REFERENTE AO HOST, NO ARQUIVO "EMAIL_HOST.txt" ==>> VC TEM QUE DISPONIBILIZAR
Envia o EMAIL

FEITO, só falta testar ...

Se resolver, marque como resolvido, por favor.
Gostando da resposta, marque-a como MELHOR, dessa forma, ganho uns pontinhos, o que incentiva a continuar ajudando . . . :)

Aguardo o retorno ....
att.:
marcelo oliver



3. Re: Script envio de emails ssmtp [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 11/03/2016 - 12:24h

inaciot escreveu:
Eai galerinha, sou novo aqui e novo com linux.
Mas ja tenho um trabalho complicado (para mim kk) pra fazer, se puderem me ajudar.
eu preciso criar um script que envie e-mails para diferentes destinos, exemplo:
criaria um script que busca todos os hosts de uma super net que estão ativos,
sendo os que não estão ativos ele me retorna e esses que não estão ativos atrelar ao seus respectivos e-mail,
minha ideia inicial seria criar um txt que armazena esses e-mails e fazer uma comparação no script para ver se batem,
tipo:
" se o ip não ativo for da rede 10.224.225. então envia um e-mail para exemplo@gmail.com", mas não sei se minha logica esta certa eu ate comecei um script mais estou sem base do que fazer, se conseguirem me ajudar agradeço.

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Boa tarde, inaciot.
Vamos aos "pontos":
01 - Enviar E-MAIL - OK
02 - Buscar HOSTS ATIVOS na REDE LOCAL - OK
03 - RANGE da REDE ???? => Endereço IP INICIAL e FINAL
04 - ENDEREÇOS DE E-MAIL ???
---------------------------------------------------
O que você quis dizer com o termo, "SUPER NET"?
Vamos "ver" se eu entendi:
Varre a REDE e busca por HOSTS ATIVOS,
gera um txt com os resultados,
Envia EMAIL.
SE for INATIVO, envia para um e-mail fixo, é isso:
Se ATIVO, envia para o e-mail REFERENTE ao IP (estaria num arquivo.txt)
Essa parte do seu texto que marquei em negrito, não ficou muito clara ...

Você tem uma relação dos HOSTS e endereço de e-mail?
Tipo:
10.224.225.10 fulano@dominio.com
10.224.225.11 ciclano@dominio.com

No aguardo...
marcelo







4. Script envio de emails ssmtp

jose inacio da silva santos
inaciot

(usa CentOS)

Enviado em 11/03/2016 - 12:55h

msoliver escreveu:

inaciot escreveu:
Eai galerinha, sou novo aqui e novo com linux.
Mas ja tenho um trabalho complicado (para mim kk) pra fazer, se puderem me ajudar.
eu preciso criar um script que envie e-mails para diferentes destinos, exemplo:
criaria um script que busca todos os hosts de uma super net que estão ativos,
sendo os que não estão ativos ele me retorna e esses que não estão ativos atrelar ao seus respectivos e-mail,
minha ideia inicial seria criar um txt que armazena esses e-mails e fazer uma comparação no script para ver se batem,
tipo:
" se o ip não ativo for da rede 10.224.225. então envia um e-mail para exemplo@gmail.com", mas não sei se minha logica esta certa eu ate comecei um script mais estou sem base do que fazer, se conseguirem me ajudar agradeço.

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Boa tarde, inaciot.
Vamos aos "pontos":
01 - Enviar E-MAIL - OK
02 - Buscar HOSTS ATIVOS na REDE LOCAL - OK
03 - RANGE da REDE ???? => Endereço IP INICIAL e FINAL
04 - ENDEREÇOS DE E-MAIL ???
---------------------------------------------------
O que você quis dizer com o termo, "SUPER NET"?
Vamos "ver" se eu entendi:
Varre a REDE e busca por HOSTS ATIVOS,
gera um txt com os resultados,
Envia EMAIL.
SE for INATIVO, envia para um e-mail fixo, é isso:
Se ATIVO, envia para o e-mail REFERENTE ao IP (estaria num arquivo.txt)
Essa parte do seu texto que marquei em negrito, não ficou muito clara ...

Você tem uma relação dos HOSTS e endereço de e-mail?
Tipo:
10.224.225.10 fulano@dominio.com
10.224.225.11 ciclano@dominio.com

No aguardo...
marcelo







Marcelo, desculpa se não fui muito claro, é o seguinte :

eu preciso escanear minha a rede por exemplo "fping -ag 10.224.225.0/23 > ipativos.txt
" os hosts que responderem irao se armazenar no arquivo ipativos.txt,

ir fazendo isso pra todos os outros ranges 10.225.224.0/23 10.224.8.0/23 etc, os hosts que nao estiverem ativos, como por exemplo os finais 8. 22. 26. 17. 33 , enviar um e-mail para para os "donos desse hosts", teria que criar um txt que tenha os e-mail relacionados com os IPS exemplo email.txt, para quando for verificar para qual e-mail for mandar ele bater, por exemplo

10.225.224.8 esta inativo, o e-mail atrelado ao "10.225.224." é o exemplo@gmail.com
ai ele envia esse e-mail para esse destino.

seria isso possível de se fazer, por que ao meu ver eu teria que criar um scrip que compare outros arquivos como o ipativos.txt para ver se o ip esta ativo, verificar o arquivo de e-mail pra ver pra quem deve mandar esse email.txt,

seria essa uma logica correta ?



5. Script envio de emails ssmtp

jose inacio da silva santos
inaciot

(usa CentOS)

Enviado em 14/03/2016 - 10:41h

msoliver escreveu:


Marcelo, desculpa se não fui muito claro, é o seguinte :
eu preciso escanear minha a rede por exemplo "fping -ag 10.224.225.0/23 > ipativos.txt
" os hosts que responderem irao se armazenar no arquivo ipativos.txt,
ir fazendo isso pra todos os outros ranges 10.225.224.0/23 10.224.8.0/23 etc, os hosts que nao estiverem ativos, como por exemplo os finais 8. 22. 26. 17. 33 , enviar um e-mail para para os "donos desse hosts", teria que criar um txt que tenha os e-mail relacionados com os IPS exemplo email.txt, para quando for verificar para qual e-mail for mandar ele bater, por exemplo
10.225.224.8 esta inativo, o e-mail atrelado ao "10.225.224." é o exemplo@gmail.com
ai ele envia esse e-mail para esse destino.
seria isso possível de se fazer, por que ao meu ver eu teria que criar um scrip que compare outros arquivos como o ipativos.txt para ver se o ip esta ativo, verificar o arquivo de e-mail pra ver pra quem deve mandar esse email.txt,
seria essa uma logica correta ?

--------------------------------------------------------------------------------
Ta desculpado .... :)
Seguinte, montei alguma coisa aqui .... De uma testada...


#!/bin/bash
MSG="HOST:$IP IS $STATUS
echo -e "\n scaneando a rede, aguarde . . . "
fping -r1 -g 10.224.225.0/24 >> SAIDA_FPING
sed -i 's/is //' SAIDA_FPING
sleep 2.5
while IFS=" " read -r IP STATUS;do
if [ $STATUS = "alive" ];then
printf "%(Data: %x%nHora: %X)T\n$MSG\n" >> ipativos.txt
elif [ $STATUS = "unreachable" ];then
#BUSCA O E-MAIL REFERENTE AO HOST, NO ARQUIVO "EMAIL_HOST.txt". SEPARADOR DE CAMPO (IFS) = ":"
#NO FORMATO IP:EMAIL (UM EM CADA LINHA)
EMAIL=$(awk '$1 ~ /\<'$ip'\>/ {printf "%s" ,$2}' EMAIL_HOST.txt)
printf "%(Data: %x%nHora: %X)T\n$MSG\n"|mutt -s "ASSUNTO" "$EMAIL"
fi
done < SAIDA_FPING


A lógica é a seguinte:
Armazena os resultados de FPING em SAIDA_FPING
Depois, lê o referido arquivo.

SE: STATUS = alive
Insere no ARQUIVO >> ipativos.txt

SE: STATUS = unreachable
BUSCA O E-MAIL REFERENTE AO HOST, NO ARQUIVO "EMAIL_HOST.txt" ==>> VC TEM QUE DISPONIBILIZAR
Envia o EMAIL

FEITO, só falta testar ...

Se resolver, marque como resolvido, por favor.
Gostando da resposta, marque-a como MELHOR, dessa forma, ganho uns pontinhos, o que incentiva a continuar ajudando . . . :)

Aguardo o retorno ....
att.:
marcelo oliver





Cara ajudo muito, só adaptei ao meu cenário, mas clareou bastante, valew



  



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts