Você sobe um servidor com DirectAdmin, configura os domínios dos clientes, valida SPF, DKIM e tudo entrega direto na caixa de entrada. Mas quando o servidor tenta enviar um relatório de backup de madrugada ou um alerta de disco, a mensagem não chega.
Ao inspecionar os logs do Exim, vem a surpresa: o Gmail rejeitou o e-mail do próprio servidor com o erro:
550-5.7.26 This message does not pass authentication checks (SPF or DKIM).
550-5.7.26 Gmail requires all senders to authenticate with either SPF or DKIM.
Abaixo, mostro onde está o ponto cego da autenticação do hostname e como gerar as chaves e entradas de DNS para nunca mais ter mensagens de sistema descartadas.
1. O ponto cego: por que o hostname é rejeitado#
Quando o DirectAdmin dispara e-mails automáticos do painel, ele usa o nome de máquina do servidor (o FQDN, como srv1.seudominio.com) no remetente e no envelope SMTP.
A maioria dos administradores configura registros SPF e DKIM apenas para o domínio principal (seudominio.com) ou para os clientes (empresa.com.br), esquecendo de autenticar o subdomínio da máquina (srv1.seudominio.com).
Como os filtros do Gmail e Yahoo agora exigem alinhamento estrito para qualquer subdomínio remetente, as mensagens enviadas pelo hostname falham na validação e são descartadas.
2. Como rastrear o erro nos logs do Exim#
Para checar os envios rejeitados direto no log do Exim:
# Filtrar erros de autenticacao recentes no log principal
grep -E "550-5.7.26|DKIM" /var/log/exim/mainlog | tail -n 20
Para testar o roteamento de saída de um endereço de teste:
# Simular resolucao e rota no Exim
exim -bt admin@gmail.com
3. Gerando as chaves DKIM e configurando o DNS#
Passo 1: Criar a pasta virtual e gerar a chave do hostname#
No DirectAdmin, cada subdomínio que assina DKIM precisa de um diretório em /etc/virtual/:
# 1. Criar pasta virtual do hostname
sudo mkdir -p /etc/virtual/srv1.seudominio.com
sudo chown mail:mail /etc/virtual/srv1.seudominio.com
sudo chmod 711 /etc/virtual/srv1.seudominio.com
# 2. Gerar o par de chaves DKIM com o utilitario nativo
sudo /usr/local/directadmin/scripts/dkim_create.sh srv1.seudominio.com
Passo 2: Criar as entradas DNS na zona do domínio principal#
Abra a zona DNS do domínio pai (seudominio.com) e adicione as 4 entradas dedicadas ao subdomínio do servidor:
; 1. Endereço IPv4 do servidor
srv1 IN A 123.123.123.123
; 2. Registro SPF exclusivo para o hostname
srv1 IN TXT "v=spf1 ip4:123.123.123.123 ~all"
; 3. Chave publica DKIM (copiada do arquivo dkim.public.key)
x._domainkey.srv1 IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA..."
; 4. Politica DMARC para o subdominio
_dmarc.srv1 IN TXT "v=DMARC1; p=quarantine; pct=100; rua=mailto:postmaster@seudominio.com"
Passo 3: Verificar o reverse DNS (rdns / PTR)#
O IP público do seu servidor deve resolver no PTR exatamente para srv1.seudominio.com.
dig +short -x 123.123.123.123
Passo 4: Validar e recarregar a zona no BIND9#
sudo named-checkzone seudominio.com /var/named/seudominio.com.db
sudo systemctl reload named
4. Como testar o envio pelo terminal#
Envie uma mensagem de teste direto pelo CLI para validar os headers recebidos:
echo "Teste de autenticacao de sistema DirectAdmin" | mail -s "Teste de Entrega Hostname" seuemail@gmail.com
No Gmail, abra o e-mail, clique em Mostrar original e confirme se todos os testes passaram:
- SPF:
PASS with IP 123.123.123.123 - DKIM:
PASS with domain srv1.seudominio.com - DMARC:
PASS
Dicas para evitar cair no spam#
- Trate o hostname como um domínio real: Ele precisa de SPF, DKIM e DMARC com o mesmo cuidado dado aos domínios de clientes.
- Monitore relatórios DMARC: Use a tag
rua=apontando para uma caixa de monitoramento para saber quando algum provedor recusar suas mensagens. - Mantenha o seletor x: O DirectAdmin usa por padrão o seletor
xno scriptdkim_create.sh. - Gerencie a fila e contadores do Exim: Se a fila estiver represada ou você atingir limites diários de envio, consulte o guia de desbloqueio de e-mails e contadores no DirectAdmin e o diagnóstico de resolução DNS e zonas no BIND9.
Este artigo foi útil?
Deixe uma reação rápida para apoiar o conteúdo:
Este post está licenciado sob CC BY-NC.



Comentários
Participe da discussão abaixo.
0 comentários