Configurando o envio de e-mails com o postfix¶
Podemos configurar alguns serviços para que em determinadas situações eles possam enviar alertas por e-mail. Mas para que as mensagens possam ser enviadas precisamos que um servidor de smtp esta configurado. No nosso caso utilizaremos o postfix
para fazer o papel do servidor de smtp.
Instalando o daemon do postfix¶
Neste artigo configuraremos o ´postfix` para realizar o envio dos e-mails gerados pelas aplicações instaladas em um determinado host.
Começaremos o processo com a instalação do postfix
Comando :
sudo apt-get install postfix ssl-cert
Durante a instalação quando for questionado sobre o tipo de instalação devemos selecionar Site da Internet
. E no nome do host devemos informar o seu FQDN, ou nome completo de domínio associado a maquina, como por exemplo luisrodrigoog.github.io
.
Ajustando as configurações do postfix¶
Após a instalação do postfix
, devemos realizar alguns ajustes no arquivo de configuração /etc/postfix/main.cf
:
Comando :
sudo nano /etc/postfix/main.cf
Devemos comentar a linha abaixo
Configuração :
#inet_interfaces = all
No final do arquivo de configuração podemos adicionar as seguintes linhas:
Configuração :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
Em seguida devemos reiniciar o daemon do postfix
Comando :
sudo systemctl enable postfix
sudo systemctl restart postfix
sudo systemctl status postfix
O ultimo comando deve gerar uma saída semelhante à:
Saída :
1 2 3 4 5 6 7 8 |
|
Para verificar se o daemon está aguardando apenas por conexões locais podemos utilizar os seguintes comandos:
Comando :
sudo netstat -tulpn | grep 25
sudo lsof -i:25
O ultimo comando deve gerar uma saída semelhante à:
Saída :
bash linenums="1USER FD TYPE DEVICE SIZE/OFF NODE NAME master 7283 root 13u IPv4 53715 0t0 TCP localhost:smtp (LISTEN)
Podemos observar que as conexões estão sendo aguardadas apenas na interface localhost
Para confirmar se o hostname que será utilizado no envio das mensagens está correto podemos usar o seguinte comando:
Comando :
cat /etc/mailname
Ajustando o arquivo /etc/aliases¶
Utilizamos este arquivo para determinar para qual conta local, ou remota a mensagem deve ser encaminhada quando ela é enviada para um determinado usuário local.
Iniciamos o processo editando o arquivo /etc/aliases
Comando :
sudo nano /etc/aliases
Em seguida vamos ajustar as seguintes linhas:
Configurações :
postmaster: root
mailer-daemon: postmaster
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root
root: sua_conta@gmail.com, outra_conta@gmail.com
Utilizando as configurações acima, redirecionamos as mensagens enviadas para as contas: postmaster, mailer-daemon, nobody, hostmaster, usenet, news, webmaster, www, ftp, abuse, noc e security para a conta root. A partir da conta root as mensagens serão enviadas para dois e-mails externos (sua_conta@gmail.com, outra_conta@gmail.com). Quando desejamos utilizar mais do que uma conta como o destino das mensagens elas devem ser separadas utilizando-se uma virgula (,).
Em seguida devemos, utilizar o comando abaixo para, recarregar as informações contidas no arquivo /etc/aliases
Comando :
sudo newaliases
Instalando o mailutils e testando o envio de e-mails¶
Para realizar o envio dos e-mails utilizaremos a aplicação mail
. Esta aplicação, no Ubuntu Linux, faz parte do pacote mailutils
.
Comando :
sudo apt-get install mailutils
Depois de instalar a aplicação, podemos utilizar o comando abaixo para enviar uma de mensagem de teste para o usuário root
. Que deve ser redirecionada para o e-mail informando no arquivo /etc/aliases
Comando :
NOME_HOST=`hostname -f`
echo "Testando o envio de mensagens a partir do host \
$NOME_HOST" | mail -s "Mensagem de teste (${NOME_HOST})" root
Com isto finalizamos o processo de instalação e configuração do postfix
, assim como finalizamos o teste de envio de uma mensagem a partir da maquina local.