Dernière mise à jour : juillet 2026

En bref : après ce guide, ta zone hébergée Route 53 publie un enregistrement SPF correct pour ton serveur de messagerie. Les serveurs destinataires savent alors qui a le droit d’envoyer en ton nom.

Prérequis

  • Une zone hébergée publique dans Amazon Route 53
  • Tu sais quels serveurs envoient des e-mails pour ton domaine (ton propre serveur, Amazon SES, un service de newsletter)

Qu’est-ce que SPF ?

SPF (Sender Policy Framework) est un enregistrement TXT dans le DNS de ton domaine. Il liste les serveurs SMTP autorisés à envoyer pour ton domaine. Les serveurs destinataires vérifient à chaque message entrant si le serveur qui livre figure sur cette liste. Sans SPF, n’importe quel serveur peut envoyer du courrier en ton nom — et tes e-mails légitimes finissent plus vite en spam.

Pour situer : SPF seul n’est pas une protection complète. Ce n’est qu’avec DKIM et DMARC que cela devient une base solide. Mais SPF est la porte d’entrée la plus simple.

Le point de départ chez Route 53

Route 53 est un service DNS pur : contrairement aux hébergeurs mutualisés, il n’y a pas d’interrupteur SPF prêt à l’emploi, car Route 53 ne sait pas où tourne ta messagerie. Tu écris l’enregistrement toi-même — ce qui colle bien ici, puisqu’en tant qu’utilisateur Route 53 tu gères en général ta propre infrastructure ou Amazon SES.

Une particularité AWS à connaître d’emblée : Route 53 proposait autrefois un type d’enregistrement SPF dédié, mais AWS l’a retiré. La doc est explicite : au lieu d’un enregistrement SPF, AWS recommande de créer un enregistrement TXT contenant la valeur applicable. Tu publies donc toujours SPF comme enregistrement TXT — jamais avec l’ancien type SPF.

Guide étape par étape

1. Vérifier si SPF est déjà actif

Le plus rapide, dans le terminal :

dig TXT example.com +short | grep spf1

Sinon, passe ton domaine dans le scanner MXAudit gratuit — il vérifie en même temps la syntaxe de l’enregistrement et la limite de lookups.

2. Construire l’enregistrement pour ton installation

Le cas classique, quand les mêmes serveurs envoient et reçoivent (ton MX pointe vers ton serveur de messagerie) :

v=spf1 mx -all

Le mécanisme mx autorise les adresses IP de tous les noms d’hôte MX de ton domaine — si l’IP du serveur change, l’enregistrement SPF reste correct automatiquement, tant que le MX est juste.

L’exemple console documenté par AWS pour une plage IP fixe ressemble à ceci :

v=spf1 ip4:192.168.0.1/16 -all
MécanismeEffet
mxautorise les serveurs derrière les enregistrements MX de ton domaine
ip4: / ip6:autorise une adresse IP fixe ou un sous-réseau
a:hostautorise l’IP derrière l’enregistrement A/AAAA de l’hôte indiqué
include:intègre le SPF d’un service d’envoi (p. ex. Amazon SES)
-allhardfail : seuls les serveurs explicitement listés peuvent envoyer

Avec ta propre infrastructure, -all est le bon choix — tu connais tes voies d’envoi. En cas de doute pendant une refonte, commence avec ~all et durcis en -all après quelques jours.

3. Saisir l’enregistrement dans la console Route 53

Connecte-toi à l’AWS Management Console et ouvre la console Route 53. Dans le volet de navigation, choisis Hosted zones, ouvre ta zone et clique sur Create record :

ChampValeur
Record name(laisser vide pour le domaine racine)
Record typeTXT
Value"v=spf1 mx -all"

La particularité Route 53, tirée de la doc : un enregistrement TXT contient une ou plusieurs chaînes entourées de guillemets doubles — la valeur va donc entre guillemets doubles dans le champ Value. Puis choisis Create records.

4. Ajouter des services d’envoi externes (si nécessaire)

Un outil de newsletter, un CRM ou Amazon SES a besoin de sa valeur include: dans le même enregistrement (dans la doc du service, cherche « SPF »). La règle tient toujours : un seul enregistrement SPF par domaine — édite l’existant, n’en crée jamais un deuxième.

5. Attendre que la modification soit en ligne

Route 53 est rapide ici : d’après la doc AWS, les modifications se propagent généralement à tous les serveurs de noms Route 53 en 60 secondes. Les résolveurs en aval peuvent toutefois garder l’ancienne réponse en cache jusqu’à expiration du TTL.

Vérifier le résultat

Vérifie ta configuration avec le scanner MXAudit gratuit — il te montre immédiatement si ton enregistrement SPF est syntaxiquement correct et combien de lookups DNS il consomme (la limite est de 10).

Ou directement dans le terminal :

dig TXT example.com +short | grep spf1

La sortie doit contenir exactement un enregistrement avec v=spf1.

Erreurs fréquentes

Utiliser l’ancien type d’enregistrement SPF. Route 53 affiche encore un type SPF, mais AWS le déconseille — publie SPF comme enregistrement TXT.

Oublier les guillemets. Dans le champ Value de Route 53, la chaîne va entre guillemets doubles.

Deux enregistrements SPF. Deux entrées TXT avec v=spf1 provoquent un permerror — les serveurs destinataires ignorent alors SPF complètement. Toutes les sources vont dans un seul enregistrement.

mx sans enregistrements MX correspondants. v=spf1 mx -all autorise exactement les serveurs de tes enregistrements MX. Si une machine envoie sans y figurer, elle est rejetée — ajoute-la via ip4: ou a:.

+all à la fin. Un +all autorise n’importe quel serveur à envoyer et rend tout l’enregistrement inutile — ne le copie pas.

Limite de lookups DNS dépassée. SPF autorise au maximum 10 lookups DNS par vérification ; mx, a: et chaque include: comptent. Avec beaucoup de services externes, ça devient juste — MXAudit les compte pour toi.

Pour aller plus loin