Com a configuração do Postfix um mundo de possibilidades se abre. Digamos que você queira ser notificado todas as vezes que o seu servidor linux for atualizado, ou quando o servidor está sendo atacado, ou quando você tem vários sites em Joomla e não quer ficar configurando email em cada um deles… Pois é, Postfix é a solução, e você vai aprender como configurá-lo neste tutorial.
Observação:
- Lembre-se de ativar o firewall e de liberar somente portas necessárias, como por exemplo a porta do SSH.
- Você não precisa abrir porta no firewall para o Postfix, uma vez que ele será utilizado somente para enviar e-mails.
- Se você não configurar a segurança do seu servidor Linux, hackers podem usar o seu servidor para enviar e-mails, se passando por você.
- É importante que você não tenha instalado nenhum outro serviço de e-mail no servidor.
Configurando o Postfix
Instale o Postfix com o comando abaixo:
sudo apt install postfix -y
Ao ver a mensagem a seguir, selecione Internet Site, pressione a tecla Tab e pressione Enter.
Em seguida, defina o nome do correio do sistema. Você pode usar o nome de host completo do seu servidor.
Após a instalação do Postfix, abra o arquivo de configuração.
sudo vi /etc/postfix/main.cf
Configure o encaminhamento de e-mail, definindo o parâmetro relayhost conforme apresentado abaixo. Neste exemplo os e-mails serão retransmitidos pelo servidor do Gmail.
relayhost = [smtp.gmail.com]:587
Em seguida, adicione as seguintes linhas ao final deste arquivo.
# outbound relay configurations
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_security_level = may
header_size_limit = 4096000
Observe que não é recomendado colocar suas credenciais do Gmail diretamente no arquivo /etc/postfix/main.cf
porque cada usuário no servidor pode usar o comando postconf -n
para descarregar as configurações do Postfix na tela. Por padrão, o Postfix é configurado para aceitar e-mails recebidos. Você pode configurar o Postfix para apenas enviar e-mail, mas não aceitar nenhum e-mail recebido. Altere inet_interfaces para o seguinte para que o Postfix escute apenas no localhost.
inet_interfaces = loopback-only
Salve e feche o arquivo. Em seguida, crie o arquivo /etc/postfix/sasl_passwd
.
sudo vi /etc/postfix/sasl_passwd
Adicione a seguinte linha:
[smtp.gmail.com]:587 [email protected]:SuaSenhaDoGmail
Observação:
- Há dois pontos entre o nome de usuário e senha.
- Se você ativou a verificação em duas etapas para sua conta do Gmail, precisará usar uma senha de aplicativo em vez da senha normal.
Salve e feche o arquivo. Em seguida, crie o arquivo db hash correspondente com postmap.
sudo postmap /etc/postfix/sasl_passwd
Agora você deve ter um arquivo /etc/postfix/sasl_passwd.db
. Reinicie o Postfix para que as alterações tenham efeito.
sudo systemctl restart postfix
Por padrão, os arquivos sasl_passwd
e sasl_passwd.db
podem ser lidos por qualquer usuário no servidor. Altere a permissão para 600 para que apenas o root possa ler e gravar nesses dois arquivos.
sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
Testando o envio de e-mails
As notificações de email são enviadas com o comando mailx, que é fornecido pelo pacote bsd-mailx.
sudo apt install bsd-mailx
Agora você pode executar o seguinte comando para testar as configurações de SMTP.
echo 'Este e-mail foi enviado através do Postfix.' | mailx -r endereço-do-remetente -s 'Olá mundo!' endereço-do-destinatário
Se as configurações de SMTP estiverem corretas, você receberá um e-mail da sua conta do Gmail. Isso é tudo pessoal! Se gostou deste tutorial, compartilhe, comente, espalhe o conhecimento. Até a próxima. 😉