De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Enviar email com msmtp
Colaboração: Wendell Almeida
Data de Publicação: 15 de maio de 2012
O envio de emails com alertas, lembretes, relatórios, etc normalmente faz parte da rotina diária de todos. Dessa forma é sempre bom que nossos sistemas possam fazer isso adequadamente.
Nem sempre temos um servidor SMTP configurado localmente ou tempo para configurar um. Uma alternativa fácil e rápida para enviar emails a partir de seu desktop ou servidor é utilizar um cliente SMTP.
MSMTP é um cliente leve e de fácil configuração.
Instalação em sistemas Debian:
apt-get install msmtp openssl
echo "set sendmail=/usr/bin/msmtp" >> /etc/mail.rc
O pacote openssl precisa ser instalado devido a exigencia dos certificados
de criptografia, usados pelo TLS.
Para a configuração em todo o sistema edite ou crie o arquivo /etc/msmtprc
ou para somente o usuário ~/.msmtprc
# Set default values for all following accounts.
defaults
tls on
tls_starttls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
#logfile ~/.msmtp.log
logfile /var/log/maillog
# The SMTP servers
account teste
host smtp.teste.com.br
from voce@teste.com.br
auth plain
user voce@teste.com.br
password XXXXYYYY
tls off
tls_starttls off
account gmail
host smtp.gmail.com
from voce@gmail.com
auth on
user voce@gmail.com
password XXXXYYYY
# Set a default account
account default : gmail
Acima temos uma configuração que possibilita o envio por duas contas de email diferentes. Uma por um servidor SMTP qualquer e outra pelo Gmail. A conta do Gmail está habilitada como default.
Para testar se está funcionando corretamente:
msmtp -S
O comando retornará informações do servidor SMTP default: gmail.
Altere as permissões do arquivo /etc/msmtprc ou ~/.msmtprc para serem visualizadas por somente o proprietário, pois as senhas das contas são de fácil visualização.
Teste final:
echo "Testando envio de email com msmtp" | mail -s "Enviar email sem SMTP local" fulano@bla.com