Usando o E.F.A. como relay de saída

O anti-spam E.F.A também pode ser usado como relay de saída dos emails corporativos, principalmente por ser um ponto centralizado de envio, ser de fácil consulta do que foi enviado, geração de relatórios, assinatura dos emails via DKIM, etc…

Primeiramente instale o  E.F.A. Para isso pode ser usado o post anterior que fiz. Depois siga os passos abaixo para instalar o OpenDKIM:

  1. O E.F.A. é feito usando a distribuição CentOS. Preferencialmente, atualize e reinicie a maquina com  ” yum clean all ; yum update ; reboot “;
  2. Instale os pacote necessário para o OpenDKIM com ” yum install openssl-devel opendkim “;
  3. Crie um diretório com o nome do domínio dos quais vai assinar os emails ( vou usar o meu nos exemplos ) com ” mkdir /etc/opendkim/keys/tonev.pro.br “;
  4. Crie a chave com qual vai assinar os emails com ” opendkim-genkey -D /etc/opendkim/keys/tonev.pro.br/ -d tonev.pro.br -s default
  5. A chave vai ser criada com permissão apenas para o root, portanto tem que mudar a permissão para que o usuário do serviço do OpenDKIM possa ler os arquivos. Altere a permissão com ” chown -R opendkim:opendkim /etc/opendkim/keys/tonev.pro.br
  6. Altere o arquivo de configuração ” /etc/opendkim.conf ” para conter as linhas abaixo:
     PidFile /var/run/opendkim/opendkim.pid
     Mode sv
     Syslog yes
     SyslogSuccess yes
     LogWhy yes
     UserID opendkim:opendkim
     Socket inet:[email protected]
     Umask 002
     Canonicalization relaxed/simple
     Selector default
     KeyFile /etc/opendkim/keys/tonev.pro.br/default.private
     KeyTable refile:/etc/opendkim/KeyTable
     SigningTable refile:/etc/opendkim/SigningTable
     ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
     InternalHosts refile:/etc/opendkim/TrustedHosts
     AutoRestart yes
     AutoRestartRate 10/1h
  7. Altere o arquivo de configuração ” /etc/opendkim/KeyTable ” para conter a linha abaixo. Se for assinar os emails de mais de um domínio, tem que relacionar os domínios com as respectivas chaves nesse arquivo:
    default._domainkey.tonev.pro.br tonev.pro.br:default:/etc/opendkim/keys/tonev.pro.br/default.private
  8. Altere o arquivo de configuração ” /etc/opendkim/SigningTable ” para conter a linha abaixo. Se for assinar os emails de mais de um domínio, tem que relacionar os domínios com as respectivas chaves nesse arquivo:
    *@tonev.pro.br default._domainkey.tonev.pro.br
  9. Altere o arquivo de configuração ” /etc/opendkim/TrustedHosts ” para conter as linhas abaixo. Nesse arquivo devem ser listados todos os servidores que originam as mensagens do seu domínio. Pode ser o IP ou o nome do hosts, se o nome estiver relacionado no /etc/hosts :
    127.0.0.1
    ::1
    10.10.20.20
    mailbox.tonev.pro.br
  10. Adicione na configuração do seu Postfix ( /etc/postfix/main.cf ) as linas abaixo:
    smtpd_milters = inet:127.0.0.1:8891
    non_smtpd_milters = $smtpd_milters
    milter_default_action = accept
    milter_protocol = 2ve
  11. Ative o serviço do OpenDKIM para ser iniciado no boot com ” chkconfig –level 345 opendkim on ” e depois inicie ele com ” service opendkim start
  12. Faça o teste do reboot – reinicie o servidor e veja se o serviço do opendkim iniciou normalmente.
  13. Adicione os registros do DKIM no DNS. Para isso verifique o arquivo /etc/opendkim/keys/tonev.pro.br/default.txt que foi gerado no passo 4. No meu caso, foi gerado o conteúdo a seguir:
    default._domainkey IN TXT ( "v=DKIM1; k=rsa; "
            "p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqEhLI1dBFabPlqoVjvM+5+ycE0Ovs95+ZHmORIUYGAdHz+z3u4gZzb+rFxcymruRGxD3PLbfeKLYR+BFvHDJYBe0LSEUKjAjjKnFgpMlQSwcG+85Xmm362oxzKv8W+kbFrzaEGECr9WY0iYPAaP+/VIg6EFjqjvzihqNICDbPfwIDAQAB" ) ; ----- DKIM key default for tonev.pro.br

    Portanto as entradas no DNS vão ser ( acrescentar a primeira linha e ajustar a segunda ) :

    _domainkey.tonev.pro.br IN TXT "o=~; [email protected]"
    default._domainkey IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqEhLI1dBFabPlqoVjvM+5+ycE0Ovs95+ZHmORIUYGAdHz+z3u4gZzb+rFxcymruRGxD3PLbfeKLYR+BFvHDJYBe0LSEUKjAjjKnFgpMlQSwcG+85Xmm362oxzKv8W+kbFrzaEGECr9WY0iYPAaP+/VIg6EFjqjvzihqNICDbPfwIDAQAB"
  14. Por ultimo é a vez de configurar o SPF no DNS – apenas edite o arquivo da zona e acrescente uma linha como nem a abaixo com os endereços IPv4/IPv6/nomes dos servidores do DNS reverso:
@    IN      TXT     "v=spf1 a ip4:200.20.30.40 ip4:202.10.20.30 ip6:2001:1:2:3::10/128 ip6:2001:1:2:3::20/128 -all"

 

Depois de finalizados todos os procedimentos, aguarde algumas horas para os caches de consultas DNS expirarem, mande alguns emails para [email protected] e [email protected] e veja os relatórios que vêm nas  respostas. Também fique monitorando o arquivo ” /var/log/maillog “. Para todo e-mail assinado, terá uma linha ” DKIM-Signature field added (s=default, d=tonev.pro.br)

 

Este passo-a-passo foi feito de acordo com o https://forum.efa-project.org/viewtopic.php?t=1006