Monitoramento de portas com netcat [Artigo] - página 2
Notificando o administrador em caso de falha
A segunda etapa consiste em enviar e-mails para o administrador do sistema no caso de alguma falha. Num primeiro momento pensei no SMS também, andei lendo o artigo do cabelo, mas o shell dele infelizmente não funciona mais.
Então resolvi reportar as falhas somente por e-mail, vamos lá!
Criaremos um shell que vai se chamar fail.sh
check="check1.sh"
dir="/scripts/check"
rm -f /scripts/check/.mail.fail > /dev/null 2>&1
/scripts/check/check.sh | grep FALHOU > /scripts/check/.mail.fail
grep FALHOU /scripts/check/.mail.fail > /dev/null 2>&1
if [ $? != 1 ] ;
mail -s "Sistema de monitoramento registrou a seguinte ocorrência: " [email protected] $dir/.mail.fail
Neste cara aí em cima, quem usa celular que permite o recebimento de e-mails é a maior mão na roda! Bom, criamos os arquivos check.sh e fail.sh, como nossa intenção é monitorar somente as falhas, podemos até criar um para verificação positiva, em vez do servidor mandar uma falha ele manda um OK.
Vamos lá, criaremos o arquivo ok.sh que terá o mesmo conteúdo acima, porém ao invés de procurar pela string "FALHOU", ele vai procurar por "OK".
check="check.sh"
rm -f /scripts/check/.mail.ok > /dev/null 2>&1
/scripts/check/check.sh | grep OK > /scripts/check/.mail.ok
grep OK /scripts/check/.mail.OK > /dev/null 2>&1
mail -s "Sistema de monitoramento registrou a seguinte ocorrência "
[email protected] < $dir/.mail.ok
Bom, chegamos ao final deste artigo, gostaria de lembrar também que o script check.sh poderá ser colocado na tabela do crontab. Exemplo: