Qu'est-ce qu'un enregistrement SPF et quels sont ses éléments ?
SPF (Sender Policy Framework) est un enregistrement DNS de type TXT qui spécifie quels serveurs de messagerie sont autorisés à envoyer des e-mails au nom de votre domaine. Il protège contre le spoofing — l'usurpation de votre domaine par des expéditeurs non autorisés.
Comment fonctionne le SPF ?
Lorsque le serveur du destinataire reçoit un message, il vérifie l'enregistrement SPF du domaine de l'expéditeur. Il compare l'adresse IP du serveur qui a envoyé l'e-mail avec la liste des adresses autorisées dans l'enregistrement. Si l'IP ne figure pas dans la liste — le message peut être rejeté ou marqué comme spam.
Exemple d'enregistrement SPF
v=spf1 ip4:203.0.113.0/24 include:_spf.google.com ~all
Éléments de l'enregistrement SPF
Version
Chaque enregistrement SPF doit commencer par
v=spf1.
C'est la seule version du protocole prise en charge.
Mécanismes
Les mécanismes déterminent quels serveurs sont autorisés à envoyer des e-mails. Ils sont vérifiés dans l'ordre de gauche à droite.
| Mécanisme | Exemple | Description |
|---|---|---|
| ip4 | ip4:203.0.113.0/24 | Autorise une adresse IPv4 spécifique ou une plage CIDR. |
| ip6 | ip6:2001:db8::/32 | Autorise une adresse IPv6 spécifique ou une plage CIDR. |
| include | include:_spf.google.com | Inclut l'enregistrement SPF d'un autre domaine. Utilisé lorsque vous utilisez des fournisseurs de messagerie externes (Google, SendGrid, etc.). |
| a | a:mail.example.com | Autorise les adresses IP indiquées par l'enregistrement A du domaine. Sans argument, vérifie le domaine de l'en-tête. |
| mx | mx | Autorise les serveurs indiqués par les enregistrements MX du domaine. Utile lorsque le serveur de réception est aussi le serveur d'envoi. |
| exists | exists:%{i}.example.com | Vérifie si un enregistrement DNS donné existe. Rarement utilisé, employé dans des configurations avancées. |
| all | ~all | Correspond à toutes les adresses IP. Toujours utilisé à la fin de l'enregistrement comme règle par défaut. |
Qualificateurs
Chaque mécanisme peut être précédé d'un qualificateur qui détermine quoi faire lorsque le mécanisme correspond.
| Symbole | Nom | Action |
|---|---|---|
| + | Pass | Le serveur est autorisé. Qualificateur par défaut. |
| - | Fail | Le serveur n'est pas autorisé. Le message doit être rejeté. La politique la plus stricte. |
| ~ | SoftFail | Le serveur n'est probablement pas autorisé. Message accepté mais marqué. Recommandé lors du déploiement du SPF. |
| ? | Neutral | Aucune politique définie. Traité de manière similaire à l'absence d'enregistrement SPF. |
Modificateurs
Les modificateurs sont des directives optionnelles qui modifient le comportement de l'ensemble de l'enregistrement SPF.
| Modificateur | Description |
|---|---|
| redirect | Redirige la vérification SPF vers un autre domaine. Remplace l'intégralité de l'enregistrement — ne peut pas être utilisé avec all. |
| exp | Indique le domaine avec un message expliquant le rejet. Rarement utilisé. |
Limite de 10 requêtes DNS
Mécanismes
include,
a,
mx
et
exists
effectuent des requêtes DNS. Le standard SPF autorise un maximum de 10 requêtes — dépasser cette limite provoque une erreur
permerror.