Enviando alertas de e-mail pelo Zabbix usando Gmail, CentOS e Postfix

Publicado por Pedro Martelotta em 17/06/2013

[ Hits: 39.002 ]

Blog: http://pedromartelotta.wordpress.com

 


Enviando alertas de e-mail pelo Zabbix usando Gmail, CentOS e Postfix



Esta dica mostra como configurar o Postfix e o Zabbix no CentOS, para enviar alertas de e-mail, usando uma conta do Gmail.

Esta semana, precisei configurar o Zabbix para enviar alertas de e-mail usando uma conta do Gmail. Como é incomum encontrar material descrevendo esse processo, que envolve a configuração do Postfix no CentOS, decidi fazer esta dica.

Para facilitar, dividi o procedimento em duas etapas.

Obs.: os e-mails que estão ao longo da dica, usei para os testes que fiz, então, fiquem atentos para alterá-los, caso contrário, não saberão se as configurações funcionarão.

Resumo do ambiente:
  • CentOS 6.4;
  • Zabbix 2.0.6, usando Postfix;
  • Gmail como servidor SMTP, para o envio das mensagens.

1ª Etapa: configurar o Postfix

Com o CentOS e o Zabbix devidamente instalados e configurados, instale o Postfix e as dependências necessárias:

# yum install cyrus-sasl cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-md5 cyrus-sasl-plain mutt postfix

Em seguida, entre no diretório de configuração do Postfix, faça o backup do arquivo de configuração:

# cd /etc/postfix/
# mv main.cf main.cf.old


Crie um novo arquivo de configuração para Postfix:

# vi main.cf

Nele, coloque somente as seguintes linhas:

#SMTP relayhost
relayhost = [smtp.gmail.com]:587
# TLS Settings
smtp_tls_loglevel = 1
smtp_use_tls = yes
smtpd_tls_received_header = yes
# TLS
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous

Crie o arquivo "sasl_passwd", contendo o servidor SMTP do Google e a conta que será utilizada para envio dos e-mails.

Dessa forma:

# vi sasl_passwd

[smtp.gmail.com]:587 [email protected]:Senha

A conta "[email protected]", eu criei exclusivamente para ser utilizado pelo Postfix, que o Zabbix estará utilizando. Vocês verão como na próxima etapa.

Já em "Senha", coloque a senha da conta do Gmail que você escolheu para enviar os e-mails.

Em seguida, rodamos o comando "postmap" no arquivo "sasl_passwd" e no "main.cf", para que eles possam ser reconhecidos e utilizados pelo Postfix:

# postmap /etc/postfix/sasl_passwd; postmap /etc/postfix/main.cf

Reinicie o serviço do Postfix:

# service postfix restart

Pronto, agora você está com tudo certo para enviar e-mails através do shell. Faça um teste:

# echo 'Teste.' | mutt -s 'Teste de envio pelo shell' [email protected]

O e-mail "[email protected]", é o que receberá o teste. Ou seja, o e-mail será enviado de "[email protected]", para "[email protected]". Então, ao seguir as etapas, não esqueça de colocar seu e-mail.

Cheque a caixa de entrada do seu e-mail, ou o aquivo de log "/var/log/maillog". Vou dar um exemplo de como deve estar, através da saída do arquivo "/var/log/maillog" da minha máquina de teste (perceba onde tem "status=sent"):

# tail -f /var/log/maillog
Jun  1 18:01:29 zabbix-server postfix/smtp[3304]: D902C41349: to=<[email protected]>, relay=smtp.gmail.com[74.125.134.108]:587, delay=7.8, delays=2/0.14/3.6/2, dsn=2.0.0, status=sent (250 2.0.0 OK 1370120491 y24sm78365951yhn.20 - gsmtp)
Jun  1 18:01:30 zabbix-server postfix/qmgr[3292]: D902C41349: removed
Se em "status" estiver "status=sent", o e-mail foi enviado com sucesso e acabam aqui as configurações necessárias para enviar seus e-mail através Postfix, usando o Gmail.

2ª Etapa: Configurando o Zabbix

Agora veja como configurar o Zabbix, através de sua interface/front-end, para que ele envie alertas de e-mails, usando o servidor SMTP do Google, através do Postfix que acabamos de configurar.

Acesse a interface web do Zabbix:
  • http://ip_do_servidor/zabbix

Faça o "login" e clique em: Administration → Media Types → Email

Em seguida, configure da seguinte forma:
  • Type :: Email
  • SMTP server :: IP da máquina que foi configurado o Postfix
  • SMTP helo :: smtp.gmail.com
  • SMTP email :: [email protected] (lembre de trocar)
  • Enabled :: Deixe Habilitado (default)

Clique em: "Save"

Para facilitar os passos acima, veja a imagem:
Linux: Enviando alertas 
de e-mail pelo Zabbix usando Gmail, CentOS e Postfix
Para testar se o Zabbix enviará os alertas via e-mail, é só criar uma Action e induzir o alerta, ativando uma trigger qualquer, por exemplo.

Se não funcionar, releia com atenção toda dica, conferindo as configurações, pois ele foi devidamente testado no ambiente descrito no início, ou tire sua dúvida através dos comentários. Se deu certo, bom trabalho!

Referência

Usei parte da configuração do Postfix descrita nesse tutorial:
Esta dica também está disponível em:
Críticas, sugestões e elogios, serão bem-vindos.

Outras dicas deste autor

DIA - Adicionando forma/folha de rede

Resumo LPI 102: Tópico 105 - Shells, Scripts e Administração de Dados

Leitura recomendada

Icecast2 - Instalando, configurando e transmitindo

Transparência real no X

Montagem automática de compartilhamentos Windows no Linux

Compartilhamento no Samba com permissão de grupo

Instalando multifuncional ou impressoras no SLAX 10.2 de maneira simples e permanente

  

Comentários
[1] Comentário enviado por brunapai em 07/08/2013 - 17:59h

Olá!
Sou nova com o linux e queria tirar uma dúvida sobre este tutorial...
Estou testando o Zabbix no Debian 7 Wheezy, e estou tentando fazer a instalação de um serviço smtp autenticado para o envio de emails de alerta, porém não consegui fazer a instalação do cyrus, pois está dando a mensagem:
"E: Impossível encontrar o pacote cyrus-sasl
E: Impossível encontrar o pacote cyrus-sasl-devel
E: Impossível encontrar o pacote cyrus-sasl-gssapi
E: Impossível encontrar o pacote cyrus-sasl-md5
E: Impossível encontrar o pacote cyrus-sasl-plain".
Sei que essa instalação a princípio foi direcionada para o CentOS, mas mesmo assim resolvi testar no Debian.
A minha dúvida é se esse mesmo tutorial (ou versão do postifix e suas dependências) são compatíveis com a versão do Debian que estou usando.

Desde já agradeço e parabenizo o site (e colaboradores) pelos excelentes conteúdos. É uma ótima fonte de informações, principalmente pra quem está começando!

Abs!

[2] Comentário enviado por pmartelotta em 08/08/2013 - 08:39h

Opa Bruna, beleza?

Esse tutorial é específico mesmo, se você seguir à risca, não funcionará em distribuições que não sejam baseadas no RHEL.

Só uma dica, que talvez você já tenha feito, dá um "apt-cache search cyrus" (Debian), um "yum search cyrus" (CentOS) e compara pelas descrições.

Edit: Já viu esse post:
http://hernandesmartins.blogspot.com.br/2013/01/tutorial-notificacoes-zabbix-gmail-e.html
?

Abraço.

[3] Comentário enviado por brunapai em 08/08/2013 - 10:29h

Pedro,
O tutorial que você indicou foi excelente e me ajudou muito!!
Muito obrigada!

Abraços!

[4] Comentário enviado por pmartelotta em 08/08/2013 - 10:50h

Show de bola!
;)

[5] Comentário enviado por arturportella em 23/08/2013 - 18:26h

Poderiam me ajudar? Eu gostaria de saber se posso usar o postfix para logar em outro servidor de e-mail simples, como o do terra, por exemplo. Eu estou me descabelando para fazer esse Zabbix enviar e-mail. Eu havia experimentado o método de envios via sendEmail com script, mas infelizmente não obtive sucesso. Como devo proceder?

Atenciosamente,

Artur Portella.

[6] Comentário enviado por esdrasconde em 03/10/2014 - 00:51h

unknown mail transport error, o meu dá esse quando eu tento fazer o teste de enviar o email.
Já configurei mil vezes o postfix, no zabbix está tudo correto apontando pro meu gmail, mas ainda não consegui.
Gostaria que você me ajudasse se tivesse um email pessoal, favor me fazer o contato no email: [email protected]

[7] Comentário enviado por dennerca em 20/05/2015 - 11:17h

Bom dia! Uso proxy na minha rede, pode me ajudar com a configuração?

[8] Comentário enviado por neidsonsouza em 04/06/2018 - 09:38h

Olá pessoal. Estou tendo dificuldades na configuração de envio de email no zabbix.
Estou recebendo esta mensagem na falha de envio reportado pelo zabbix:

cannot connect to SMTP server "127.0.0.1": cannot connect to [[127.0.0.1]:587]: [111] Connection refused

Instalei o zabbix 3.4 no centos 7,
Consigo enviar email pelo cli do linux onde instalei o zabbix. Mas não pelo zabbix.

Alguém aqui já lidou com algum caso parecido com esse?
Obrigado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts