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. 😉

Categorized in: