31 janeiro 2010

Enviando email usando Postfix Gmail com smtp-relay no ubuntu

Passos usados nesse Tutorial

1. Instalar os Pacontes (Programas e dependências)
2. Editar o arquivo /etc/postfix/main.cf
3. Editar o arquivo /etc/postfix/generic
4. Editar o arquivo /etc/postfix/sasl_passwd
5. Criar os certificados no diretório /etc/postfix/certs/
6. Usar o comando postmap para o postfix criar seu banco de dados padrão.
7. Enviar um email pelo console para testar.
8. Analizar o log para ver se deu tudo certo.

Primeiro vamos instalar os pacotes .

sudo apt-get install libsasl2-2 libsasl2-modules sasl2-bin mutt postfix openssl

Vamos entrar no diretório do postfix.
cd /etc/postfix

Vamos mover a conf padrão dele e criar uma vazia.

sudo mv main.cf main.cf-bkp

Cuidado para não criar um arquivo com espaço no final.

sudo touch main.cf

Vamos colocar esse conteúdo abaixo no arquivo main.cf.

sudo kate /etc/postfix/main.cf #para kde
sudo gedit /etc/postfix/main.cf #para gnome
sudo nano /etc/postfix/main.cf #para console

#SMTP relayhost
relayhost = [smtp.gmail.com]:587
## TLS Settings

smtp_tls_loglevel = 1
smtp_tls_CAfile = /etc/postfix/certs/CAcert.pem
smtp_tls_cert_file = /etc/postfix/certs/mycert.pem
smtp_tls_key_file = /etc/postfix/certs/mykey.pem
smtp_use_tls = yes
smtpd_tls_CAfile = /etc/postfix/certs/CAcert.pem
smtpd_tls_cert_file = /etc/postfix/certs/mycert.pem
smtpd_tls_key_file = /etc/postfix/certs/mykey.pem
smtpd_tls_received_header = yes

# configuracao tls
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous

#alias de mapeamento interno para externo
smtp_generic_maps = hash:/etc/postfix/generic

Vamos criar o arquivo ” generic ” e vamos inserir o conteúdo abaixo.

sudo nano /etc/postfix/generic

Coloque esse conteúdo.

root@xjulio.info seulogin@gmail.com
root@c5-teste2.localdomain seulogin@gmail.com
Control + X para sair e depois S.

Vamos criar o arquivo .
/etc/postfix/sasl_passwd

sudo nano /etc/postfix/sasl_passwd .

E colocar esse conteúdo.

[smtp.gmail.com]:587 seulogin@gmail.com:suasenha

Então vamos criar os certificados .
Vamos criar o diretório dos certificados.

sudo mkdir /etc/postfix/certs/

Depois entrar nele.

cd /etc/postfix/certs/

Vamos criar os certificados .

Vamos mudar de usuário.

sudo bash

Depois.

# openssl dsaparam 1024 -out dsa1024.pem
Depois.

# openssl req -x509 -nodes -days 3650 -newkey dsa:dsa1024.pem -out mycert.pem -keyout mykey.pem;ln -s mycert.pem CAcert.pem
Depois.
# openssl req -x509 -new -days 3650 -key /etc/postfix/certs/mykey.pem -out /etc/postfix/certs/mycert.pem;rm dsa1024.pem

Agora vamos dar esse comando .
# postmap /etc/postfix/sasl_passwd;postmap /etc/postfix/generic;postmap /etc/postfix/main.cf

Vamos reiniciar o Postfix.

# /etc/init.d/postfix restart

Vamos Testar se ele está funcionando .

echo "segue a mensagem" | mutt -s "teste de envio pelo console" meuemail@xjulio.info

Olhe no log se deu tudo certo, caso ele acuse algum erro corrija de acordo com a mensagem.

kate /var/log/mail.log #no kde

gedit /var/log/mail.log #no gnome .

Ou usando o comando tail.

tail -f /var/log/mail.log

Nenhum comentário:

Postar um comentário