Configuração do Exim depois de instalar o cPanel: hostname, DNS reverso, HELO, IP de envio com mailips e mailhelo e os ajustes que evitam o spam.
O cPanel instala o Exim pronto para funcionar, mas os provedores de e-mail (Gmail, Microsoft, Yahoo) julgam o servidor por detalhes que só você pode acertar: o nome do servidor, o DNS reverso do IP e o nome que ele usa ao se apresentar (HELO). Se esses três não batem, os e-mails de todos os clientes caem no spam ou voltam. Faça esta lista logo depois de instalar o cPanel.
Antes de começar
- Acesso root ao WHM e ao SSH.
- Acesso ao painel do provedor do servidor ou do IP, onde se configura o DNS reverso.
- Um nome para o servidor dentro de um domínio seu, como
servidor.seudominio.com.br. Não use o domínio principal de um site (seudominio.com.br) como nome do servidor.
1. Defina o hostname do servidor
- Altere o nome em WHM » Networking Setup » Change Hostname, usando um nome completo (FQDN), como
servidor.seudominio.com.br. - Crie o registro A desse nome apontando para o IP principal do servidor, na zona DNS do domínio (no próprio WHM, se o DNS for local, ou no provedor de DNS).
- Confira pelo SSH:
O primeiro comando deve mostrar o nome novo e o segundo, o IP do servidor.hostname dig +short servidor.seudominio.com.br
Confira também o /etc/hosts: ele deve ter uma linha com o IP principal seguido do nome completo e do nome curto, como 203.0.113.10 servidor.seudominio.com.br servidor.
2. Configure o DNS reverso (PTR)
O DNS reverso responde à pergunta "qual é o nome deste IP?". Servidores de e-mail fazem essa consulta para cada conexão que recebem. O registro PTR do IP principal deve apontar para o hostname do servidor, e o hostname deve apontar de volta para o mesmo IP.
- O PTR é configurado por quem controla o IP: o datacenter ou o provedor do servidor, pelo painel dele ou por chamado. Não adianta criar na zona DNS do seu domínio.
- Confira o resultado:
A resposta deve serdig +short -x 203.0.113.10servidor.seudominio.com.br.
3. Confira tudo no Email Deliverability
Em WHM » Email » Email Deliverability, o cPanel verifica DKIM, SPF e DNS reverso de cada domínio e avisa quando o nome usado no HELO não combina com o domínio. Corrija o que aparecer com problema, usando os botões Repair ou Manage. O DKIM em todas as contas está explicado em como ativar DKIM e SPF no servidor cPanel.
4. Servidor com vários IPs: mailips e mailhelo
Por padrão, todo e-mail sai pelo IP principal e se apresenta com o hostname. Se você tem mais de um IP e quer que um domínio envie por um IP próprio (por exemplo, para isolar um cliente que manda muito e-mail), use dois arquivos:
/etc/mailips define o IP de saída de cada domínio. O * vale para todos os outros:
clientegrande.com.br: 203.0.113.11
*: 203.0.113.10
/etc/mailhelo define o nome usado no HELO de cada domínio. Ele precisa ser o nome que está no PTR do IP correspondente:
clientegrande.com.br: mail.clientegrande.com.br
*: servidor.seudominio.com.br
Depois, ative a leitura dos arquivos em WHM » Service Configuration » Exim Configuration Manager, aba Basic Editor, seção Domains and IPs:
- Reference /etc/mailhelo for custom outgoing SMTP HELO: On
- Reference /etc/mailips for custom IP on outgoing SMTP connections: On
Salve. Antes de usar um IP novo para envio, configure o PTR dele (passo 2) e inclua o IP no SPF dos domínios que vão usá-lo.
mailips à mão.5. Ajustes de segurança e reputação recomendados
| Onde | Opção | Por quê |
|---|---|---|
| Exim Configuration Manager » Basic Editor » RBLs | Ligar a RBL do Spamhaus e a do SpamCop | Recusa e-mails de IPs conhecidos por enviar spam, antes de entrarem no servidor. O Spamhaus não responde a consultas feitas por DNS públicos (como 8.8.8.8): o servidor precisa usar um resolvedor próprio. |
| Exim Configuration Manager » Basic Editor » ACL Options | Require HELO before MAIL ligada (padrão) | Barra robôs mal escritos. |
| Tweak Settings » Mail | Max hourly emails per domain | Vem ilimitado. Um limite contém o estrago se uma conta for invadida. |
| Tweak Settings » Mail | Prevent "nobody" from sending mail ligada (padrão) | Impede scripts sem usuário identificado de enviar e-mail. |
| Tweak Settings » Mail | Track email origin via X-Source email headers ligada (padrão) | Mostra nos cabeçalhos qual script gerou cada e-mail. |
/etc/exim.conf diretamente. O cPanel recria esse arquivo a cada atualização e a cada vez que você salva no Exim Configuration Manager. Toda personalização deve ser feita pelo Advanced Editor.Como testar o resultado
- Envie um e-mail de uma conta do servidor para um endereço do Gmail e abra Mostrar original: SPF, DKIM e DMARC devem aparecer como
PASS. - Confira no log o IP e o nome usados na entrega:
grep 'gmail.com' /var/log/exim_mainlog | grep '=>' | tail -n 3
Problemas comuns
E-mails recusados com mensagem sobre reverse DNS ou PTR
O IP de saída não tem PTR, ou o PTR não bate com o HELO. Confira o passo 2 e, se usa mailips, o PTR de cada IP listado.
Mudei o hostname e o certificado do servidor ficou inválido
O cPanel pede um certificado novo para o hostname automaticamente, uma vez por dia, depois que o registro A existe. Para não esperar, rode /usr/local/cpanel/bin/checkallsslcerts.