Amazon SES : aligner SPF et DKIM pour DMARC
Par Thomas · RSSI virtuel · 04 septembre 2026
Amazon SES (Simple Email Service) occupe une place particulière dans le paysage des plateformes d'envoi : facturé au message, piloté par API ou par SMTP, il sert aussi bien les e-mails transactionnels d'une application que des campagnes à fort volume. Cette souplesse a une contrepartie côté authentification : contrairement à une suite bureautique où DKIM s'active en deux clics, SES laisse à l'expéditeur le soin de câbler lui-même l'alignement — et la configuration par défaut, une fois l'identité de domaine vérifiée, ne suffit pas à faire passer DMARC.
Le malentendu le plus répandu tient à cette étape de vérification. Ajouter un domaine dans SES et le « vérifier » prouve seulement que la console a la main sur la zone DNS ; cela n'aligne ni SPF ni DKIM. Tant que rien de plus n'est posé, l'enveloppe des messages part sous un sous-domaine d'amazonses.com et aucune signature ne porte le domaine affiché dans le champ From. Un destinataire qui applique une politique p=reject rejette alors ce trafic pourtant légitime.
Ce guide détaille les trois briques qui rendent SES compatible avec DMARC : l'Easy DKIM et ses trois CNAME, le domaine MAIL FROM personnalisé qui va chercher l'alignement SPF, et l'alternative BYODKIM pour les organisations qui refusent toute délégation. Puis les erreurs de configuration les plus fréquentes, et la contre-épreuve finale — la lecture des rapports RUA.
Easy DKIM : trois CNAME, une signature alignée
L'option recommandée s'appelle Easy DKIM. À l'activation sur une identité de domaine, SES génère une paire de clés et publie la clé publique de son côté ; l'expéditeur, lui, pose trois enregistrements CNAME dans la zone du domaine — ici exemple.fr :
xxxx1._domainkey.exemple.fr. CNAME xxxx1.dkim.amazonses.com.
xxxx2._domainkey.exemple.fr. CNAME xxxx2.dkim.amazonses.com.
xxxx3._domainkey.exemple.fr. CNAME xxxx3.dkim.amazonses.com.
Les trois préfixes (des jetons opaques propres à l'identité) correspondent à trois sélecteurs DKIM. La logique est celle d'une délégation : la clé n'est pas copiée dans la zone du domaine, elle vit chez Amazon, et le CNAME fait le pont. Quand un serveur destinataire vérifie une signature d=exemple.fr; s=xxxx1, la résolution DNS suit le CNAME et récupère la clé chez SES, de façon transparente. Trois sélecteurs sont provisionnés d'emblée pour permettre la rotation des clés sans intervention manuelle sur la zone — une hygiène cryptographique déléguée à qui l'industrialise.
L'essentiel pour DMARC : la signature produite porte d=exemple.fr, le domaine organisationnel lui-même, et non un domaine d'Amazon. L'alignement DKIM est donc acquis, y compris en mode strict. Sur ce seul mécanisme, DMARC passe déjà — à condition que les trois CNAME soient bien propagés et que la clé soit détectée comme active dans la console.
Identité de domaine, sous-domaine et sortie du bac à sable
Avant même l'authentification, SES impose deux choix structurants qui pèsent sur DMARC. Le premier est le périmètre de l'identité vérifiée : SES distingue l'identité de domaine et l'identité d'adresse. Vérifier une adresse isolée (contact@exemple.fr) autorise l'envoi depuis cette seule boîte, mais n'active pas l'Easy DKIM à l'échelle du domaine — la signature alignée ne suit pas. Pour un usage sérieux, c'est l'identité de domaine qu'il faut vérifier : elle couvre toutes les adresses du domaine et, surtout, elle porte la configuration DKIM. Un sous-domaine dédié à l'envoi transactionnel (mailer.exemple.fr) peut d'ailleurs constituer une identité distincte, avec ses propres clés — une segmentation utile quand un flux applicatif doit rester isolé du courrier humain.
Le second choix tient au bac à sable. Tout nouveau compte SES démarre en mode sandbox : l'envoi n'est possible que vers des adresses elles-mêmes vérifiées, et le volume est plafonné. Cette contrainte n'a rien à voir avec l'authentification, mais elle brouille souvent le diagnostic : un test qui « ne part pas » relève parfois du bac à sable, pas d'une erreur DKIM. La sortie du bac à sable se demande à AWS et conditionne l'envoi vers des destinataires arbitraires — étape à franchir avant toute campagne de vérification DMARC à grande échelle.
Sur la cryptographie enfin, l'Easy DKIM provisionne par défaut des clés RSA de 2048 bits, robustes et acceptées partout. SES gère leur rotation de façon transparente grâce aux trois sélecteurs ; il n'y a donc aucune raison de conserver une clé ancienne. La longueur 1024 bits, encore tolérée par certains outils hérités, est à proscrire pour toute nouvelle configuration : plusieurs opérateurs de messagerie la considèrent désormais comme faible.
Un dernier dispositif mérite attention pour le suivi : les configuration sets. Ils attachent aux envois un flux d'événements — remises, plaintes, rebonds — exportable vers d'autres services AWS. Sans rapport direct avec l'alignement, ils complètent utilement la lecture RUA : là où les rapports agrégés disent comment le trafic est authentifié du point de vue des destinataires, les événements SES disent ce qu'il devient une fois remis. Croiser les deux sources accélère le diagnostic quand une source légitime se met soudain à échouer.
Le domaine MAIL FROM personnalisé : chercher l'alignement SPF
Par défaut, l'adresse d'enveloppe (le Return-Path, ce que SPF vérifie réellement) est un sous-domaine géré par Amazon, du type bounces+…@region.amazonses.com. SPF authentifie bien ce domaine — Amazon publie l'enregistrement adéquat — mais il s'aligne avec amazonses.com, pas avec exemple.fr. Résultat : SPF passe sans s'aligner, ce qui, du point de vue de DMARC, ne compte pas.
La réponse s'appelle « custom MAIL FROM domain ». Elle consiste à déclarer un sous-domaine d'enveloppe appartenant au domaine expéditeur — par exemple mail.exemple.fr — puis à poser deux enregistrements dans la zone :
mail.exemple.fr. MX 10 feedback-smtp.eu-west-1.amazonses.com.
mail.exemple.fr. TXT "v=spf1 include:amazonses.com ~all"
L'enregistrement MX (dont l'hôte dépend de la région SES utilisée — ici eu-west-1) permet le traitement des rebonds ; l'enregistrement TXT autorise les serveurs d'Amazon à émettre pour ce sous-domaine. L'enveloppe devient alors …@mail.exemple.fr, un sous-domaine du domaine organisationnel : en mode relâché — le défaut de DMARC —, il s'aligne avec exemple.fr. Sous DMARCbis, le domaine organisationnel se détermine par le DNS Tree Walk plutôt que par l'ancienne Public Suffix List, mais le résultat est identique.
Faut-il vraiment aligner SPF alors que l'Easy DKIM suffit déjà à faire passer DMARC ? La redondance a une valeur opérationnelle réelle : si une redirection change l'IP émettrice et casse SPF, DKIM survit ; si une passerelle réécrit le corps et invalide la signature DKIM, SPF reste. Les exemples commentés, balise par balise montrent comment cette brique s'insère dans la politique globale : la configuration SES prépare l'alignement, l'enregistrement _dmarc fixe la consigne.
BYODKIM : garder la clé chez soi
Certaines organisations, en particulier dans des secteurs régulés, interdisent la délégation DNS d'une clé cryptographique à un tiers. SES prévoit ce cas avec BYODKIM — fournir sa propre clé DKIM. Le principe s'inverse : la paire de clés est générée en interne, la clé publique est publiée sous forme d'enregistrement TXT dans un sélecteur choisi par l'organisation, et la clé privée est fournie à SES à la configuration de l'identité.
selector._domainkey.exemple.fr. TXT "v=DKIM1;k=rsa;p=MIIBIjANBgkq…"
Le compromis est clair. BYODKIM garde la maîtrise complète de la clé — sa génération, sa longueur, son stockage — mais transfère à l'équipe interne la charge de la rotation : chaque renouvellement redevient une opération manuelle et coordonnée. Pour la grande majorité des cas, l'Easy DKIM reste préférable : moins d'erreurs de copie, rotation automatique, et le même résultat d'alignement. BYODKIM se justifie quand une politique de sécurité l'exige explicitement, pas par défaut.
Les erreurs qui font échouer la configuration
Plusieurs pièges reviennent régulièrement dans le corpus de rapports que l'analyseur DMARC gratuit traite au quotidien.
S'arrêter à la vérification d'identité. Vérifier le domaine dans SES ne fait qu'ouvrir le droit d'émettre ; sans Easy DKIM activé et propagé, aucune signature alignée n'est produite. C'est la cause la plus fréquente d'un DMARC qui échoue alors que « tout semble configuré ».
Oublier le domaine MAIL FROM personnalisé. Sans lui, SPF ne s'aligne jamais. Ce n'est pas bloquant tant que DKIM tient, mais cela retire la redondance : le jour où une signature saute, plus rien ne rattrape le message.
Se tromper de région dans l'enregistrement MX. L'hôte feedback-smtp est spécifique à la région SES. Un domaine configuré pour us-east-1 avec un MX pointant vers eu-west-1 verra le traitement des rebonds échouer silencieusement.
Publier un SPF trop strict trop tôt. Passer directement à -all sur le sous-domaine MAIL FROM avant d'avoir confirmé que le trafic sort bien par SES expose à des rejets si une autre source émet encore. Le ~all (softfail) reste prudent le temps de la vérification.
La contre-épreuve : les rapports RUA
La seule preuve qu'une configuration tient n'est pas la console SES, mais ce que les destinataires rapportent. Une fois un enregistrement _dmarc publié avec une adresse rua=, les rapports agrégés arrivent sous quelques jours et détaillent, source par source, ce qui s'aligne et ce qui échoue. La lecture des rapports DMARC agrégés révèle si le trafic Amazon SES est correctement attribué au domaine : DKIM aligné, SPF aligné si le domaine MAIL FROM a été posé, et surtout aucune source SES qui échouerait sur les deux mécanismes.
C'est cette vérification qui autorise à durcir la politique. Tant que les rapports montrent du trafic SES légitime non aligné, passer à p=reject reviendrait à se couper une partie de ses propres envois. Une fois l'alignement confirmé sur plusieurs jours et sur l'ensemble des flux — transactionnels comme campagnes —, la montée vers une politique stricte se fait sans risque. L'analyseur en ligne recompose cet état à partir des enregistrements publiés et des rapports reçus, et situe le domaine sur le chemin qui mène de p=none à p=reject.
Guides liés
- Activer DKIM sur Microsoft 365 : le guide pas à pas
Microsoft 365 signe par défaut en onmicrosoft.com, domaine que DMARC ne peut aligner. Defender, PowerShell, les deux CNAME : l'activation DKIM pas à pas.
- Activer DKIM sur Google Workspace : le guide pas à pas
DKIM est inactif par défaut sur un domaine Google Workspace. Génération de la clé 2048 bits, TXT google._domainkey, vérification et alignement DMARC.
- Configurer SPF et DKIM chez OVHcloud
OVHcloud : MX Plan, Email Pro ou Exchange, chaque offre a ses SPF et DKIM. Zone DNS, piège du SPF par défaut, sélecteurs CNAME, vérification.
À propos de l'auteur
Thomas — Thomas est le RSSI virtuel de DMARC.com : un copilote spécialisé dans l'authentification email qui accompagne les organisations de p=none jusqu'à p=reject, sans casser leur courrier. Ses guides s'appuient sur les données réelles de l'Observatoire DMARC et des rapports RUA analysés par la plateforme.
