SPF (Sender Policy Framework) : Le guide complet
Tout comprendre sur l'enregistrement SPF pour protéger votre domaine contre l'usurpation d'email.
Qu'est-ce que le SPF ?
Le SPF (Sender Policy Framework) est un protocole d'authentification email défini dans la RFC 7208. Il permet au propriétaire d'un domaine de spécifier quels serveurs de messagerie sont autorisés à envoyer des emails en son nom.
Concrètement, le SPF fonctionne via un enregistrement DNS de type TXT. Quand un serveur de messagerie reçoit un email prétendant venir de votre domaine, il consulte cet enregistrement pour vérifier si le serveur expéditeur est bien autorisé. Si ce n'est pas le cas, l'email peut être rejeté ou marqué comme suspect.
Sans SPF, n'importe qui peut envoyer un email en se faisant passer pour votre domaine. C'est ce qu'on appelle le spoofing email, une technique massivement utilisée dans les attaques de phishing. Le SPF est donc la première ligne de défense contre ce type d'usurpation.
Le SPF seul ne suffit pas : il doit être combiné avec DKIM (DomainKeys Identified Mail) et DMARC (Domain-based Message Authentication) pour une protection complète de votre domaine.
Comment fonctionne le SPF ?
Le fonctionnement du SPF repose sur une vérification en plusieurs étapes lors de la réception d'un email :
- Envoi de l'email — Un serveur de messagerie envoie un email avec votre domaine dans l'adresse de l'expéditeur (le champ
MAIL FROMde l'enveloppe SMTP). - Requête DNS — Le serveur récepteur extrait le domaine de l'adresse
MAIL FROMet interroge le DNS pour récupérer l'enregistrement SPF (TXT) associé. - Comparaison de l'IP — Le serveur récepteur compare l'adresse IP du serveur expéditeur avec la liste des IP et mécanismes autorisés dans l'enregistrement SPF.
- Verdict — Selon le résultat, le serveur récepteur applique une action : accepter (
pass), rejeter (fail), marquer comme douteux (softfail) ou considérer comme neutre (neutral).
Un enregistrement SPF typique ressemble à ceci :
Chaque élément a une signification précise :
v=spf1— Indique qu'il s'agit d'un enregistrement SPF version 1 (obligatoire).include:— Autorise les serveurs définis dans le SPF d'un autre domaine (ex: Google, SendGrid).ip4:— Autorise une adresse IPv4 ou un bloc d'adresses spécifique.-all— Rejette tous les serveurs non explicitement autorisés (hard fail).~all— Marque comme suspect sans rejeter (soft fail) — moins strict.
Comment configurer le SPF étape par étape
Étape 1 : Identifier vos serveurs d'envoi
Listez tous les services qui envoient des emails pour votre domaine. Cela inclut généralement :
- Votre fournisseur de messagerie (Google Workspace, Microsoft 365, OVH, etc.)
- Vos outils d'email marketing (Mailchimp, Brevo, SendGrid, etc.)
- Votre application web si elle envoie des emails transactionnels
- Tout autre service tiers (CRM, helpdesk, etc.)
Étape 2 : Construire votre enregistrement SPF
Commencez toujours par v=spf1 et terminez par un mécanisme -all ou ~all. Entre les deux, ajoutez vos serveurs autorisés. Exemple pour Google Workspace + Brevo :
Étape 3 : Ajouter l'enregistrement dans votre DNS
Connectez-vous à l'interface de gestion DNS de votre registrar ou hébergeur (OVH, Cloudflare, Gandi, etc.) et créez un enregistrement TXT :
- Type : TXT
- Nom / Host : @ (ou laissez vide selon le fournisseur)
- Valeur : votre enregistrement SPF complet
- TTL : 3600 (1 heure) ou la valeur par défaut
Étape 4 : Vérifier votre configuration
Après la propagation DNS (quelques minutes à 48 heures), testez votre enregistrement SPF. Vous pouvez utiliser notre outil de vérification gratuit pour valider que tout fonctionne correctement.
Erreurs courantes à éviter
1. Dépasser la limite de 10 lookups DNS
La spécification SPF impose un maximum de 10 résolutions DNS (include, a, mx, redirect). Chaque include peut lui-même contenir d'autres includes. Dépassez cette limite et votre SPF sera automatiquement invalide avec un résultat permerror.
2. Avoir plusieurs enregistrements SPF
Un domaine ne doit avoir qu'un seul enregistrement SPF. Si vous en avez plusieurs, la vérification échouera. Fusionnez tous vos mécanismes dans un seul enregistrement TXT.
3. Utiliser +all au lieu de -all ou ~all
Le mécanisme +all autorisé tous les serveurs à envoyer des emails pour votre domaine, ce qui revient à n'avoir aucune protection. Utilisez toujours -all (hard fail) pour une protection maximale.
4. Oublier un service d'envoi
Si vous oubliez d'inclure un service légitime (par exemple votre outil de newsletter), ses emails seront rejetés ou classés en spam. Faites un inventaire complet avant de configurer votre SPF.
Questions fréquentes sur le SPF
Le SPF suffit-il à protéger mon domaine contre le spoofing ?
Non. Le SPF vérifie uniquement l'adresse d'enveloppe (MAIL FROM), pas l'adresse affichée au destinataire (le header "From"). Un attaquant peut contourner le SPF en utilisant un domaine d'enveloppe différent. C'est pourquoi vous devez obligatoirement combiner le SPF avec DKIM et DMARC pour une protection complète.
Que se passe-t-il si je dépasse les 10 lookups DNS ?
Si votre enregistrement SPF nécessite plus de 10 résolutions DNS, le résultat sera un permerror (erreur permanente). Les serveurs récepteurs traiteront alors votre SPF comme s'il n'existait pas. Pour rester sous la limite, vous pouvez remplacer certains include par des adresses IP directes ou utiliser un service de "flattening" SPF.
Quelle est la différence entre -all et ~all ?
-all (hard fail) indique que les emails provenant de serveurs non autorisés doivent être rejetés. ~all (soft fail) indique qu'ils doivent être acceptés mais marqués comme suspects. En pratique, avec une politique DMARC correcte, la différence est minime. Néanmoins, -all est recommandé pour une sécurité maximale.
Vérifiez votre domaine gratuitement
Testez votre configuration SPF, DKIM, DMARC et MTA-STS en un clic. Notre outil analyse votre domaine et vous indique exactement ce qu'il faut corriger.
Tester mon domaine