A viagem de um e-mail: SPF, DKIM e DMARC por dentro
O próprio e-mail conta a viagem: as camadas que ganha, os carimbos no cabeçalho e onde SPF, DKIM e DMARC decidem se ele vai para o spam.
TESTAR MEU DOMÍNIO →Eu sou o e-mail que você acabou de enviar
Venha comigo. No caminho vão me embrulhar, carimbar, abrir e conferir. É isso que decide se eu chego na caixa de entrada ou no spam. Use os botões ou as setas do teclado para avançar, e troque para Com falha para ver o mesmo caminho quando a identidade não fecha.
Acabei de nascer
Sou só isto: quatro cabeçalhos e um texto. Antes de sair do notebook, o programa de e-mail me fecha num túnel TLS para eu chegar ao servidor do provedor sem ninguém me ler no caminho.
- Túnel
TLSaté a porta 587, com login da loja
O túnel protege o trajeto, não a minha identidade. Quem eu sou ainda não foi provado para ninguém.
EU, POR DENTRO
Olá, Ana! O seu pedido saiu hoje e chega até sexta…
As camadas em volta do e-mail
A mensagem que a Ana lê é só o miolo. Durante a viagem, ela passa por dentro de outras camadas que aparecem e somem em cada trecho:
- Cabeçalhos e corpo: o que fica gravado na mensagem. Cada servidor acrescenta um
Receivedno topo, como carimbos de passaporte, e o servidor de envio acrescenta a assinaturaDKIM-Signature. - Envelope SMTP: o
MAIL FROMe oRCPT TOque os servidores trocam entre si. Ele pode ser diferente doFromque a pessoa vê, e é descartado na entrega. Só sobra uma cópia noReturn-Path. - TLS: o túnel cifrado de cada trecho. Protege o conteúdo no caminho, mas não prova quem enviou.
- TCP/IP: o endereço de rede de origem e de destino. É o IP de origem que o SPF confere.
O DMARC só passa se o SPF ou o DKIM passarem com o mesmo domínio do From. Uma assinatura válida de outro domínio não serve.
Onde costuma quebrar
- Serviço novo fora do SPF. A ferramenta de newsletter, o ERP ou o CRM manda e-mail com o seu domínio, mas o IP dele não está no registro SPF.
- DKIM com o domínio de outro. O serviço assina com o domínio dele. A assinatura é válida, mas não alinha com o From e não conta para o DMARC.
- Mais de 10 consultas no SPF. Cada
includecusta consultas DNS. Passou de 10, o SPF dá erro permanente e conta como falha. - DMARC endurecido cedo demais. Ir direto para
p=rejectsem ler os relatórios bloqueia envios legítimos que ninguém sabia que existiam. Veja DMARC: p=none, quarantine e reject.
Os registros, para consulta
| Registro | Onde fica | Exemplo | Responde a |
|---|---|---|---|
| MX | destino.com.br | 10 mx1.destino.com.br. | Para qual servidor eu entrego? |
| SPF | loja-exemplo.com.br (TXT) | v=spf1 include:_spf.provedor.net -all | Este IP pode enviar pelo domínio? |
| DKIM | mail._domainkey.loja-exemplo.com.br (TXT) | v=DKIM1; k=rsa; p=MIIBIjAN… | A assinatura confere e a mensagem não mudou? |
| DMARC | _dmarc.loja-exemplo.com.br (TXT) | v=DMARC1; p=quarantine; rua=mailto:dmarc@loja-exemplo.com.br | O que fazer se SPF e DKIM não alinharem com o From? |
Para conferir o seu domínio, use o Email Health. Para ver os carimbos de uma mensagem real que você recebeu, cole o cabeçalho no Email Header Analyzer. O passo a passo com comandos está em Como verificar SPF, DKIM e DMARC.