Sendmail + Gmail

Post date: 10/11/2012 22:25:42

Olá,

Esta postagem tem como objetivo ajudar meu amigo Newton Dore. Usando o tutorial disponível na net no ubuntu server 12.10, ao chamar o envio do email, o servidor fica demorando para enviar a mensagem e não consegue.

Nesta seção, está descrita uma adaptação do método descrito a seguir.

1. Verifique seu arquivo /etc/hosts

Abra o arquivo $ sudo vim /etc/hosts e veja se a sua máquina está completamente qualificada (nome e domínio), similar ao mostrado a seguir

10.1.1.X maquina.dominio maquina

2. Configurando os serviços

  1. Baixe os arquivos necessários

    1. apt-get install mailutils sendmail sasl2-bin

  2. Na linha 7 do arquivo /etc/default/saslauthd troque START=no por START=yes

    1. vim /etc/default/saslauthd

  3. Iniciar os serviços e fazer o backup das configurações inciais

    1. service saslauthd start

    2. sudo cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.orig

    3. sudo vi /etc/mail/sendmail.mc

3. Configurando o login e a senha

  1. Crie o arquivo que conterá as informações de login

    1. mkdir /etc/mail/auth

    2. touch /etc/mail/auth/client-info

    3. echo 'AuthInfo:smtp.gmail.com "U:root" "I:seuemail@gmail.com" "P:suasenha" "M:PLAIN" '>> /etc/mail/auth/client-info

    4. echo 'AuthInfo:smtp.gmail.com:587 "U:root" "I:seuemail@gmail.com" "P:suasenha" "M:PLAIN" '>> /etc/mail/auth/client-info

  2. Crie o arquivo de configuração de senha

    1. cd /etc/mail/auth

    2. makemap -r hash client-info.db < client-inf

    3. chmod 700 /etc/mail/auth

    4. chmod 600 /etc/mail/auth/*

4. Criando o certificado

  1. Criando os certificados

    1. mkdir /etc/mail/certs

    2. cd /etc/mail/certs

    3. openssl dsaparam 1024 -out dsa1024 -out dsa1024.pem

    4. openssl req -x509 -nodes -days 3650 -newkey dsa:dsa1024.pem -out /etc/mail/certs/mycert.pem -keyout /etc/mail/certs/mykey.pem

  2. Digite os campos do certificado e finalize a criação dos arquivos

    1. ln -s /etc/mail/certs/mycert.pem /etc/mail/certs/CAcert.pem

    2. openssl req -x509 -new -days 3650 -key /etc/mail/certs/mykey.pem -out /etc/mail/certs/mycert.pem

  3. Modificando as permissões de acesso do certificado

    1. chmod 700 /etc/mail/certs

    2. chmod 600 /etc/mail/certs/*

5. Modificando as configurações do sendmail

  1. Abrindo o arquivo /etc/mail/sendmail

    1. cd /etc/mail

    2. vim /etc/mail/sendmail.mc

  2. Eu inseri as linhas a seguir após a linha 98

    1. include(`/etc/mail/tls/starttls.m4')dnl

    2. define(`SMART_HOST',`smtp.gmail.com')dnl

    3. define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

    4. define(`RELAY_MAILER_ARGS', `TCP $h 587')

    5. define(`ESMTP_MAILER_ARGS', `TCP $h 587')

    6. FEATURE(`authinfo',`hash /etc/mail/auth/client-info')dnl

    7. define(`CERT_DIR', `MAIL_SETTINGS_DIR`'certs')

    8. define(`confCACERT_PATH', `CERT_DIR')

    9. define(`confCACERT', `CERT_DIR/CAcert.pem')

    10. define(`confSERVER_CERT', `CERT_DIR/mycert.pem')

    11. define(`confSERVER_KEY', `CERT_DIR/mykey.pem')

    12. define(`confCLIENT_CERT', `CERT_DIR/mycert.pem')

    13. define(`confCLIENT_KEY', `CERT_DIR/mykey.pem')

  3. Criando o certificado

    1. m4 sendmail.mc > sendmail.cf

  4. Re-configurando o sendmail

    1. make

    2. /etc/init.d/sendmail reload

    3. sendmailconfig