✉️ Email

SPF, DKIM et DMARC : authentifier ses emails

Les trois enregistrements DNS indispensables pour que Gmail, Outlook et consorts acceptent vos mails : principe, valeurs à publier, tests.

intermédiaire ⏱ 15 min Mise à jour : 2026-04-23

SPF, DKIM et DMARC sont trois enregistrements DNS qui prouvent aux serveurs destinataires que vos emails sont légitimes. Sans eux, vos messages finissent en spam, voire sont carrément rejetés par Gmail et Outlook. Depuis février 2024, les deux géants imposent l'authentification complète pour tout expéditeur dépassant 5 000 mails/jour, et la tendance se durcit pour tous les volumes.

Pourquoi authentifier ses emails

Le protocole SMTP d'origine n'a aucune notion d'identité : n'importe qui peut envoyer un mail en prétendant être facture@votredomaine.fr. C'est la base du phishing. Les trois standards ci-dessous corrigent ce défaut :

  • SPF déclare quels serveurs ont le droit d'envoyer au nom de votre domaine.
  • DKIM signe cryptographiquement chaque mail avec une clé privée, que le destinataire vérifie via une clé publique publiée en DNS.
  • DMARC dit aux destinataires quoi faire si SPF ou DKIM échoue, et permet de recevoir des rapports.
Si vos emails sont hébergés chez Datacampus
Nous vous fournissons les trois valeurs exactes à publier au moment de la création du domaine dans Mailcow. Vous n'avez qu'à les copier/coller dans votre zone DNS.

SPF — Sender Policy Framework

SPF est un enregistrement TXT à la racine du domaine qui liste les serveurs autorisés à émettre. Pour un domaine hébergé chez Datacampus :

Type : TXT
Nom  : @  (ou votredomaine.fr)
Valeur : v=spf1 include:_spf.datacampus.fr -all

Décomposer la valeur

  • v=spf1 — version du protocole.
  • include:_spf.datacampus.fr — délègue l'autorisation à l'enregistrement SPF de Datacampus (mise à jour automatique si nos IP changent).
  • -all — rejeter tout ce qui ne vient pas des sources listées. C'est strict, c'est bien.

Ajouter un autre émetteur

Si vous envoyez aussi depuis un service tiers (Brevo, Mailjet, une app CRM, etc.), ajoutez son include sur la même ligne :

v=spf1 include:_spf.datacampus.fr include:spf.brevo.com -all
⚠️
Un seul SPF par domaine
Publier deux enregistrements TXT SPF distincts casse tout : les destinataires ignorent les deux. Il faut fusionner les sources dans un seul v=spf1 ... -all.

DKIM — DomainKeys Identified Mail

DKIM signe chaque mail avec une clé privée détenue par le serveur d'envoi. La clé publique correspondante est publiée en DNS, sous un « sélecteur » (un sous-domaine arbitraire qui identifie la clé).

Sur Mailcow, la clé est générée automatiquement à la création du domaine. Vous récupérez la valeur à publier dans Configuration > Configuration et détails > Clés DKIM.

Type : TXT
Nom  : dkim._domainkey
Valeur : v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...

Le sélecteur par défaut chez Datacampus est dkim. Le nom d'enregistrement à créer est donc dkim._domainkey (certains hébergeurs DNS préfixent automatiquement le domaine, d'autres non — vérifiez en regardant l'enregistrement publié).

DMARC — le chef d'orchestre

DMARC indique aux destinataires la politique à appliquer si SPF et DKIM échouent, et précise où envoyer les rapports. Enregistrement minimal recommandé :

Type : TXT
Nom  : _dmarc
Valeur : v=DMARC1; p=quarantine; rua=mailto:dmarc@votredomaine.fr; ruf=mailto:dmarc@votredomaine.fr; fo=1

Les politiques possibles

ValeurEffet si auth échoueQuand l'utiliser
p=noneRien, juste des rapportsPhase d'observation, début de mise en place
p=quarantineDossier spamCible raisonnable après quelques semaines de none
p=rejectMail rejetéObjectif final, une fois que tout est propre

Autres tags utiles

  • rua=mailto:... — adresse qui reçoit les rapports agrégés quotidiens (JSON/XML).
  • ruf=mailto:... — rapports forensiques (un par échec, volumes élevés possibles).
  • pct=50 — applique la politique à 50 % du trafic seulement (utile pour une transition en douceur).
  • sp=reject — politique pour les sous-domaines.
💡
Montée en charge progressive
Commencez par p=none pendant 2 à 4 semaines, lisez les rapports agrégés, corrigez les sources légitimes qui ne sont pas encore alignées, puis passez à p=quarantine puis p=reject. Passer direct en reject sans observation, c'est risquer de perdre des mails légitimes.

Tester sa configuration

MXToolbox

Les outils MXToolbox SuperTool permettent de vérifier un à un chaque enregistrement :

  • SPF Record Lookup — vérifie la syntaxe et le nombre de lookups DNS (max 10).
  • DKIM Lookup — renseignez le domaine et le sélecteur (dkim).
  • DMARC Lookup — valide la politique publiée.

mail-tester.com

Le plus complet : envoyez un mail à l'adresse que mail-tester.com affiche, vous obtenez un score sur 10 avec le détail de ce qui va et ce qui cloche (SPF, DKIM, DMARC, mais aussi contenu, réputation IP, liens, HTML).

Inspection manuelle avec dig

dig +short TXT votredomaine.fr
dig +short TXT dkim._domainkey.votredomaine.fr
dig +short TXT _dmarc.votredomaine.fr

Dépannage courant

⚠️
Symptômes et causes fréquentes
  • SPF softfail / neutral — vous avez ~all ou ?all au lieu de -all.
  • « too many DNS lookups » — votre chaîne d'include dépasse 10 lookups. Supprimez les sources inutiles.
  • DKIM absent — le sélecteur dans le mail ne correspond pas à celui publié en DNS (regardez l'en-tête DKIM-Signature: s=...).
  • DMARC pass mais mail en spam — problème de contenu ou de réputation IP, pas d'auth. Passez par mail-tester.com.
  • Alignement — SPF et DKIM doivent utiliser le même domaine que l'en-tête From:, sinon DMARC échoue même si SPF et DKIM passent individuellement.

Résumé — les 3 enregistrements à publier

; SPF
@             IN TXT "v=spf1 include:_spf.datacampus.fr -all"

; DKIM (valeur fournie par Mailcow)
dkim._domainkey IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkq..."

; DMARC
_dmarc        IN TXT "v=DMARC1; p=quarantine; rua=mailto:dmarc@votredomaine.fr; fo=1"

Une fois les trois en place et testés, vous pouvez durcir DMARC vers reject et oublier le sujet — jusqu'à la prochaine intégration d'un service tiers qui vous obligera à mettre SPF à jour.

Pour aller plus loin

Besoin d'aide ?

Cette documentation ne couvre pas votre cas ? Notre support humain est là.