Como configurar um servidor de e-mail local para desenvolvimento (PHP/Linux)

Ocasionalmente preciso montar uma nova máquina para a equipe de desenvolvimento de minha empresa e, tendo em vista que temos um ambiente de desenvolvimento em PHP (ambiente linux), é bastante prático que a máquina de testes possa enviar e-mails localmente para verificarmos se os programas em PHP estão enviando e-mails corretamente. 



Neste post vou mostrar como configuramos nosso servidor de e-mails local para que todos os e-mails enviados da máquina sejam direcionados para a máquina local.

1. Instalando o servidor de e-mail

Primeiramente, temos que instalar o servidor de e-mails postfix:
sudo apt-get install postfix

2. Configurando o PHP para envio de e-mails

Uma vez instalado o postfix, precisamos configurar corretamente o php para envio de e-mails. Para isso, vamos editar o arquivo php.ini (note que usamos xampp aqui e, portanto, o nome da pasta pode variar em seu sistema):
sudo gedit /opt/lampp/etc/php.ini

Nesse arquivo, procure pelo termo "sendmail" e insira a seguinte linha no trecho indicado:
; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
sendmail_path = /usr/sbin/sendmail -t -i

3. Configurando o postfix

Abra agora o arquivo de configuração do postfix:
sudo gedit /etc/postfix/main.cf

Você deve inserir as seguintes linhas nesse arquivo:
home_mailbox = /Maildir/  #O diretorio em que você irá salvar os emails
mailbox_command =
mydestination = localhost, mail.localhost
transport_maps = hash:/etc/postfix/transport
luser_relay = seunomedeusuario

Crie agora um novo arquivo transport:
sudo gedit /etc/postfix/transport

E dentro desse arquivo coloque o seguinte:
localhost :
seu.dominio.vai.aqui.com :
* local:seunomedeusuario

Execute os seguintes comandos agora:
sudo postmap /etc/postfix/transport
sudo service postfix restart

Finalmente, crie os diretórios do Maildir em sua pasta home:
mkdir ~/Maildir
mkdir ~/Maildir/new
mkdir ~/Maildir/cur
mkdir ~/Maildir/tmp
Se tudo correu bem, você deve ser capaz agora de receber e-mails encaminhados pelo php na máquina local.

Para testar, instale o Evolution (sudo apt-get install evolution) e configure uma nova caixa de entrada, com a entrada tipo Maildir, apontando para a pasta Maildir que criamos.
 
Copyright © . Apê de Nerd