SPF, DKIM, DMARC : sécuriser son domaine contre le phishing
Guide complet pour configurer SPF, DKIM et DMARC et protéger votre domaine contre l'usurpation d'identité et le phishing.
Chaque jour, des milliards d'emails frauduleux usurpent des domaines légitimes pour envoyer du phishing. Sans SPF, DKIM et DMARC correctement configurés, votre domaine peut être utilisé pour envoyer des emails en votre nom — à votre insu. Ce guide vous explique comment verrouiller votre domaine en 30 minutes.
Pourquoi votre domaine peut être usurpé
Le protocole SMTP (Simple Mail Transfer Protocol), inventé en 1982, ne dispose d'aucune authentification native. N'importe qui peut envoyer un email avec n'importe quelle adresse d'expéditeur (champ From:). C'est pourquoi des mécanismes d'authentification ont été créés : SPF, DKIM et DMARC.
Sans ces protections, vos clients peuvent recevoir des emails frauduleux soi-disant envoyés depuis votre domaine. C'est le spoofing de domaine, vecteur principal de phishing ciblé.
SPF — Sender Policy Framework
Qu'est-ce que SPF ?
SPF définit quels serveurs sont autorisés à envoyer des emails pour votre domaine. Il s'agit d'un enregistrement DNS de type TXT qui liste les IPs et services autorisés.
Configurer SPF
Ajoutez un enregistrement TXT sur votre domaine racine (@) :
# SPF de base — serveur mail sur IP fixe
v=spf1 ip4:203.0.113.42 -all
# Avec G Suite / Google Workspace
v=spf1 include:_spf.google.com -all
# Avec OVH + Gmail + serveur propre
v=spf1 ip4:203.0.113.42 include:_spf.google.com include:mx.ovh.com -all
# Signification des qualificateurs :
# -all : rejeter tout email non autorisé (recommandé)
# ~all : marquer en spam (softfail, moins strict)
# ?all : neutre (inutile en production)- Incluez uniquement les services que vous utilisez réellement pour envoyer des emails
- Limite SPF : maximum 10 lookups DNS — évitez les chaînes d'include trop longues
- Un seul enregistrement SPF par domaine — plusieurs enregistrements SPF sont invalides
Ne mettez jamais +all (autoriser tout le monde) — cela annule complètement la protection SPF et marque votre domaine comme source de spam.
DKIM — DomainKeys Identified Mail
Qu'est-ce que DKIM ?
DKIM ajoute une signature cryptographique à chaque email. Le serveur de réception peut vérifier que l'email n'a pas été modifié en transit et qu'il provient bien d'un serveur autorisé par votre domaine.
Générer une paire de clés DKIM
# Générer une paire de clés RSA 2048 bits
openssl genrsa -out dkim_private.key 2048
openssl rsa -in dkim_private.key -pubout -out dkim_public.key
# Extraire la clé publique en une ligne
openssl rsa -in dkim_private.key -pubout 2>/dev/null | grep -v "^-" | tr -d '
'Configurer l'enregistrement DNS DKIM
# Format de l'enregistrement DKIM
# Nom : [sélecteur]._domainkey.votredomaine.com
# Type : TXT
mail._domainkey.example.com IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhki..."
# Vérification
dig TXT mail._domainkey.example.comLe sélecteur (ici 'mail') peut être n'importe quel nom. Vous pouvez avoir plusieurs sélecteurs actifs simultanément pour faciliter la rotation des clés.
DMARC — Domain-based Message Authentication
Qu'est-ce que DMARC ?
DMARC s'appuie sur SPF et DKIM et définit la politique à appliquer quand un email échoue ces vérifications. Il permet aussi de recevoir des rapports sur les tentatives d'usurpation de votre domaine.
Configurer DMARC progressivement
# Étape 1 — Mode surveillance (aucun email rejeté, rapports uniquement)
_dmarc.example.com IN TXT "v=DMARC1; p=none; rua=mailto:dmarc@example.com"
# Étape 2 — Mode quarantaine (emails suspects en spam)
_dmarc.example.com IN TXT "v=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc@example.com"
# Étape 3 — Mode rejet (recommandé en prod)
_dmarc.example.com IN TXT "v=DMARC1; p=reject; rua=mailto:dmarc@example.com; ruf=mailto:dmarc@example.com; adkim=s; aspf=s"
# Options importantes :
# p=reject : rejeter les emails non conformes
# pct=25 : appliquer la politique sur 25% des emails (déploiement progressif)
# rua= : adresse de réception des rapports agrégés (quotidiens)
# ruf= : adresse de réception des rapports forensiques (par email échoué)
# adkim=s : alignement DKIM strict
# aspf=s : alignement SPF strictCommencez TOUJOURS par p=none pendant 2 semaines. Analysez les rapports DMARC pour vous assurer que tous vos services légitimes (ESP, CRM, outil de facturation) passent bien SPF et DKIM avant de passer à reject.
MTA-STS et DANE : aller plus loin
MTA-STS (Mail Transfer Agent Strict Transport Security) force le chiffrement TLS pour les emails entrants. DANE (DNS-based Authentication of Named Entities) lie un certificat TLS à un enregistrement DNS via TLSA.
# MTA-STS — Enregistrement DNS
_mta-sts.example.com IN TXT "v=STSv1; id=20260101"
# Fichier de politique à héberger sur https://mta-sts.example.com/.well-known/mta-sts.txt
version: STSv1
mode: enforce
mx: mail.example.com
max_age: 604800Vérifier votre configuration
Utilisez notre SPF/DKIM/DMARC Checker pour valider votre configuration en un clic. Vous pouvez aussi vérifier manuellement :
# Vérifier SPF
dig TXT example.com | grep spf
# Vérifier DKIM
dig TXT mail._domainkey.example.com
# Vérifier DMARC
dig TXT _dmarc.example.com
# Tester l'envoi avec mail-tester.com (score /10)- mail-tester.com — score de délivrabilité sur 10 points
- dmarcian — analyseur de rapports DMARC avec visualisation
- MXToolbox — vérification complète SPF/DKIM/DMARC/MX
- SPF/DKIM/DMARC Checker — notre outil intégré sur xytherion.online
Sources & références
- 1RFC 7208 — Sender Policy Framework (SPF)
Spécification officielle IETF du protocole SPF
- 2RFC 6376 — DomainKeys Identified Mail (DKIM)
Spécification officielle IETF du protocole DKIM
- 3RFC 7489 — Domain-based Message Authentication (DMARC)
Spécification officielle IETF du protocole DMARC
- 4Google — Exigences d'authentification email 2024
Google exige SPF, DKIM et DMARC pour les expéditeurs de masse depuis février 2024
- 5dmarcian — Comprendre les rapports DMARC
Outil de visualisation des rapports XML DMARC
Testez vos configurations
Xytherion Tools propose des outils gratuits pour vérifier vos DNS, auditer votre SSL, tester SPF/DKIM/DMARC et bien plus — directement depuis votre navigateur.