Un serveur destinataire pose trois questions sur votre courrier : a-t-il été envoyé depuis une machine autorisée à envoyer pour ce domaine, a-t-il été altéré en chemin, et que faire si les réponses sont non. SPF, DKIM et DMARC sont ces trois réponses, et ce sont tous des enregistrements DNS.

SPF - qui a le droit d'envoyer

v=spf1 ip4:203.0.113.10 include:_spf.google.com -all
  • Un seul enregistrement SPF par domaine. Deux, c'est une erreur permanente et non une fusion - et c'est la faute la plus fréquente des trois.
  • Dix résolutions DNS au maximum. Chaque include compte, et les include qu'ils contiennent comptent aussi. Au-delà de dix, c'est un échec.
  • -all veut dire rejeter ; ~all veut dire traiter comme suspect. Commencez par ~all et resserrez une fois les rapports propres.

DKIM - a-t-il été altéré

dig +short selector1._domainkey.yourdomain.com TXT

Votre serveur signe chaque message ; la clé publique vit dans le DNS sous un sélecteur. Si l'enregistrement manque ou est tronqué - les clés longues sont souvent mal collées et se retrouvent coupées - tous les messages échouent au contrôle.

DMARC - que faire des échecs

v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com; pct=100

Commencez à p=none. Cela ne change rien à la délivrance et fait arriver les rapports, qui vous disent qui envoie en votre nom. Passez à quarantine puis à reject une fois les rapports propres.

Testez ce que vous avez réellement

dig +short yourdomain.com TXT | grep spf1
dig +short _dmarc.yourdomain.com TXT
# then send a message to a checker and read the headers it returns

L'alignement : la partie qui piège tout le monde

DMARC exige que le domaine visible du From corresponde au domaine qui a passé SPF ou DKIM. Envoyer par un tiers avec son domaine de rebond passe SPF et échoue quand même à DMARC, parce que l'alignement est faux. Configurez l'expéditeur avec votre propre domaine, ou appuyez-vous sur un DKIM signé par le vôtre.

Si le courrier atterrit dans les indésirables malgré ces trois contrôles réussis, voyez le courrier part en indésirable et le DNS inverse d'un serveur de courrier.