Aller au contenu principal

Amazon SES : guide complet de configuration DNS et authentification email

Par CaptainDNS
Publié le 20 janvier 2026

Mis à jour le 29 septembre 2026

Schéma montrant le flux d'envoi email Amazon SES avec authentification DKIM, SPF et DMARC
TL;DR
  • Amazon SES offre un envoi email à 0,10 $ les 1 000 emails en tarification à l'unité, avec 7 régions en Europe.
  • Easy DKIM génère 3 CNAME qui servent à la fois de vérification de domaine et de signature DKIM (rotation automatique gérée par AWS).
  • Custom MAIL FROM est indispensable pour l'alignement SPF DMARC, sans lui, SPF authentifie avec amazonses.com.
  • Pour p=reject, combinez Easy DKIM + Custom MAIL FROM + alignement relaxed (adkim=r, aspf=r).
  • Si les bounces montent alors que SPF et DKIM passent, regardez la réputation par source : les tenants SES isolent chaque client ou application, sans protéger le compte.

Pourquoi Amazon SES mérite votre attention ?

Amazon SES traite plus de mille milliards d'emails par an depuis son lancement en 2011. Avec une tarification à 0,10 $ les 1 000 emails à l'unité (hors plans Essentials, Pro et Enterprise), c'est l'une des options les plus économiques pour l'envoi transactionnel et marketing.

Ce qui change la donne :

  • API v2 (septembre 2019) : messages jusqu'à 40 Mo, gestion native des désabonnements, en-têtes personnalisés sans passer par Raw email
  • 7 régions Europe : Francfort, Irlande, Londres, Paris, Stockholm, Milan, Zurich
  • Virtual Deliverability Manager : tableau de bord de réputation et recommandations automatisées

Ce guide se concentre sur la configuration DNS et l'authentification. L'objectif : une délivrabilité optimale compatible p=reject.

Architecture d'envoi SES et flux d'authentification

Flux d'authentification email Amazon SES avec DKIM, SPF et DMARC

Quand vous envoyez via SES :

  1. Votre application appelle l'API v2 ou utilise SMTP
  2. SES signe le message avec votre clé DKIM (domaine d=captaindns.com)
  3. Le serveur destinataire vérifie SPF (IP d'envoi), DKIM (signature), puis DMARC (alignement)

Configuration DNS complète

Easy DKIM : la méthode recommandée

Easy DKIM génère 3 enregistrements CNAME qui remplissent deux fonctions :

  • Vérification de propriété du domaine (pas besoin de TXT _amazonses)
  • Signature DKIM avec rotation automatique des clés, gérée par AWS
{token1}._domainkey.captaindns.com  CNAME  {token1}.dkim.amazonses.com
{token2}._domainkey.captaindns.com  CNAME  {token2}.dkim.amazonses.com
{token3}._domainkey.captaindns.com  CNAME  {token3}.dkim.amazonses.com

À Milan et Zurich, la cible inclut la région : {token}.dkim.eu-south-1.amazonses.com et {token}.dkim.eu-central-2.amazonses.com.

Taille de clé : RSA 2048-bit par défaut (recommandé).

Custom MAIL FROM : l'élément critique pour DMARC

Sans Custom MAIL FROM, l'enveloppe SMTP utilise amazonses.com comme domaine MAIL FROM. Résultat : SPF authentifie avec amazonses.com, pas votre domaine, l'alignement SPF DMARC échoue.

Enregistrements requis (exemple pour mail.captaindns.com) :

TypeNomValeurPriorité
MXmail.captaindns.comfeedback-smtp.eu-west-1.amazonses.com10
TXTmail.captaindns.com"v=spf1 include:amazonses.com ~all"-

Contraintes :

  • Le Custom MAIL FROM doit être un sous-domaine du domaine vérifié
  • Un seul enregistrement MX (plusieurs = échec)
  • Ce sous-domaine ne doit pas recevoir d'autres emails

SPF sur le domaine racine : optionnel mais recommandé

Si vous utilisez Easy DKIM + Custom MAIL FROM, SPF sur le domaine racine n'est pas requis pour DMARC (DKIM suffit). Il sert surtout aux autres services qui envoient avec votre domaine racine :

captaindns.com  TXT  "v=spf1 include:amazonses.com ~all"

Alignement DMARC : configuration pour p=reject

Matrice d'alignement DMARC avec Amazon SES

Ce qui fonctionne (et ce qui casse)

Alignement DKIM (méthode principale) :

ConfigurationAligné ?DMARC via DKIM ?
Email vérifié seul (pas de domaine DKIM)NonNon
Domaine avec Easy DKIM activéOuiOui
Domaine avec BYODKIMOuiOui

Alignement SPF :

ConfigurationAligné ?DMARC via SPF ?
MAIL FROM par défaut (amazonses.com)NonNon
Custom MAIL FROM + aspf=r (relaxed)OuiOui
Custom MAIL FROM + aspf=s (strict)NonNon (sous-domaine non aligné)

Enregistrement DMARC recommandé

_dmarc.captaindns.com  TXT  "v=DMARC1;p=reject;adkim=r;aspf=r;rua=mailto:dmarc@captaindns.com"

Points clés :

  • adkim=r et aspf=r : alignement relaxed (autorise les sous-domaines)
  • Progressez de p=none → p=quarantine → p=reject
  • Surveillez les rapports rua avant de durcir

Tableau récapitulatif DNS

TypeHôte/NomValeurObligatoire
CNAME{token1}._domainkey.captaindns.com{token1}.dkim.amazonses.comOui (Easy DKIM)
CNAME{token2}._domainkey.captaindns.com{token2}.dkim.amazonses.comOui (Easy DKIM)
CNAME{token3}._domainkey.captaindns.com{token3}.dkim.amazonses.comOui (Easy DKIM)
MXmail.captaindns.comfeedback-smtp.{region}.amazonses.comOui (Custom MAIL FROM)
TXTmail.captaindns.com"v=spf1 include:amazonses.com ~all"Oui (Custom MAIL FROM)
TXT_dmarc.captaindns.com"v=DMARC1;p=reject;adkim=r;aspf=r;..."Recommandé
CNAMEtrack.captaindns.comr.{region}.awstrack.meOptionnel (suivi)

À Milan et Zurich, la cible DKIM est {token}.dkim.<région>.amazonses.com.

Méthodes d'envoi : API v2 vs SMTP

API v2 (recommandée)

Endpoint : https://email.{region}.amazonaws.com

aws sesv2 send-email \
  --from-email-address "sender@captaindns.com" \
  --destination '{"ToAddresses":["recipient@captaindns.com"]}' \
  --content '{
    "Simple": {
      "Subject": {"Data": "Test"},
      "Body": {"Html": {"Data": "<h1>Hello</h1>"}}
    }
  }' \
  --configuration-set-name "my-config-set"

Avantages v2 :

  • Messages jusqu'à 40 Mo (vs 10 Mo en v1)
  • En-têtes personnalisés natifs (List-Unsubscribe sans Raw email)
  • ListManagementOptions pour la gestion des listes

Interface SMTP

Endpoint : email-smtp.{region}.amazonaws.com

PortProtocoleRecommandation
25STARTTLSLimité par défaut sur EC2
465TLS impliciteAlternative
2465TLS impliciteAlternative au 465
587STARTTLSRecommandé
2587STARTTLSAlternative au 587

En-têtes X-SES-* disponibles :

  • X-SES-CONFIGURATION-SET : associer un configuration set
  • X-SES-MESSAGE-TAGS : ajouter des tags (key=value)
  • X-SES-TENANT : associer l'envoi à un tenant (avec X-SES-CONFIGURATION-SET)

Quotas et limites à connaître

QuotaSandboxProduction
Emails/24h200Variable selon le cas d'usage
Taux d'envoi1/secVariable selon le cas d'usage
Destinataires/message5050
Taille message (API v2)40 Mo40 Mo

Sortir du sandbox : via Console SES ou AWS CLI, délai ~24h si demande complète.

Seuils de réputation : les chiffres critiques

Tableau de bord de réputation Amazon SES avec seuils d'alerte

MétriqueRevue du comptePause possible
Taux de rebond5 %10 %
Taux de plainte0,1 %0,5 %

AWS recommande de rester sous 2 % de bounces.

Bonnes pratiques :

  • Vérifier que la liste de suppression du compte est active (par défaut pour les comptes créés depuis fin 2019) : elle couvre les hard bounces et les plaintes
  • Avec des tenants, limiter la liste de suppression à chaque tenant (SuppressionScope=TENANT) : un hard bounce va alors dans la liste du tenant et dans la liste globale gérée par AWS, pas dans celle du compte (tenants : voir ci-dessous)
  • Configurer des alertes CloudWatch sur Reputation.BounceRate et Reputation.ComplaintRate
  • Soft bounces : SES réessaie jusqu'à 14h par défaut, durée réglable de 5 min à 14h dans le configuration set (MaxDeliverySeconds)

Tenants SES : isoler la réputation par client ou application

Une chute de délivrabilité ne vient pas forcément du DNS. SPF et DKIM peuvent passer alors que les bounces et les plaintes d'un client, d'une BU ou d'une application dégradent la réputation.

Un tenant est un conteneur logique dans votre compte SES. On lui associe des identités, des configuration sets et des modèles d'e-mail. Il a ses propres métriques de réputation : bounces, plaintes (y compris les boucles de rétroaction des FAI) et signaux tiers.

Pour envoyer au nom d'un tenant, passez le paramètre TenantName dans l'API v2. En SMTP, ajoutez l'en-tête X-SES-TENANT avec X-SES-CONFIGURATION-SET. Les ressources utilisées doivent être associées au tenant, sinon l'envoi échoue.

Politique de réputationComportementSeuils publiés par AWS
Standard (défaut, recommandée)Mise en pause quand SES détecte un problème de haute sévéritéBounces > 15 % ou plaintes > 1 %
StrictMise en pause dès un problème, même de faible sévéritéBounces > 10 % ou plaintes > 0,5 %
NonePas de mise en pause liée à la politique, les problèmes restent enregistrés. SES peut quand même mettre le tenant en pause en cas de problème grave-

Un tenant en pause ne peut plus envoyer, les autres tenants continuent. La réactivation est manuelle, via l'API UpdateReputationEntityCustomerManagedStatus. Une pause décidée par l'équipe Trust & Safety d'AWS passe par un dossier au Support. SES publie les problèmes détectés et les changements de statut dans EventBridge.

L'isolation limite l'impact d'une source, mais l'activité cumulée des tenants pèse toujours sur la réputation du compte, dont les seuils restent applicables.

Les tenants ne remplacent ni SPF, ni DKIM, ni DMARC, ni le Custom MAIL FROM.

Un tenant est régional et n'est pas répliqué : pour envoyer depuis plusieurs régions en Europe, créez-le dans chacune. Pas d'imbrication, 10 000 tenants par défaut (jusqu'à 300 000 sur demande). Facturation en plus, par tenant et par mois : voir la page tarifs SES.

Tarification à l'unité

ComposantPrix
Emails envoyés0,10 $ / 1 000
Données sortantes (pièces jointes)0,12 $ / Go
IP dédiée standard24,95 $ / mois / IP
Managed Dedicated IPs15 $ / mois + de 0,08 $ à 0,02 $ / 1 000, dégressif selon le volume
Virtual Deliverability Manager0,07 $ / 1 000 emails

Plans SES : depuis le 21 juillet 2026, les nouveaux comptes (et les régions d'un compte existant sans envoi facturé depuis le 1er juin 2025) démarrent sur le plan Essentials, à 0,16 $ / 1 000 emails jusqu'à 10 millions par mois, sans frais fixes. Le passage à la tarification à l'unité ci-dessus reste possible à tout moment.

Nouveaux comptes AWS : jusqu'à 200 $ de crédits Free Tier, utilisables notamment sur SES.

Plan d'action : configuration en 6 étapes

  1. Créer une identité domaine dans la console SES (région européenne de votre choix)
  2. Configurer Easy DKIM : publier les 3 CNAME fournis par SES
  3. Attendre la vérification : jusqu'à 72h pour la propagation DNS
  4. Configurer Custom MAIL FROM : créer le sous-domaine avec MX et TXT SPF
  5. Publier l'enregistrement DMARC : commencer par p=none, surveiller les rapports
  6. Sortir du sandbox : soumettre la demande d'accès en production

Guides techniques : autres plateformes email transactionnel

Découvrez nos guides complets pour les autres solutions d'email transactionnel :

FAQ

Faut-il obligatoirement configurer Custom MAIL FROM ?

Pour l'alignement SPF DMARC, oui. Sans Custom MAIL FROM, SPF authentifie avec amazonses.com, ce qui casse l'alignement. Si vous comptez uniquement sur DKIM pour DMARC (ce qui fonctionne), Custom MAIL FROM reste recommandé pour la défense en profondeur.

Quelle région européenne choisir pour le RGPD ?

SES propose 7 régions en Europe (Francfort, Irlande, Londres, Paris, Stockholm, Milan, Zurich), dont Londres et Zurich hors UE. Choisissez selon la latence et la disponibilité SMTP (Milan et Zurich n'ont pas d'endpoint SMTP).

Les 3 CNAME Easy DKIM sont-ils tous actifs simultanément ?

AWS ne documente pas le rôle de chaque CNAME. Publiez les trois : SES gère les clés et leur rotation sans action DNS de votre part.

Comment tester la configuration avant d'envoyer en production ?

En sandbox, envoyez vers des adresses vérifiées. Utilisez aws sesv2 send-email avec un configuration set configuré pour publier les événements vers SNS ou CloudWatch. Vérifiez les en-têtes DKIM et SPF reçus.

Mon taux de rebond monte alors que SPF et DKIM passent : est-ce un problème DNS ?

Pas forcément. SPF et DKIM authentifient l'expéditeur, ils ne disent rien de la qualité de la liste. Les bounces et les plaintes d'une source (un client, une BU, une application) pèsent sur la réputation. Identifiez d'abord la source qui génère les rebonds. Si plusieurs clients ou applications partagent le compte, isolez-les dans des tenants SES pour limiter l'impact de l'un sur les autres. Les seuils du compte restent applicables.

Glossaire

  • Easy DKIM : méthode SES qui génère et gère automatiquement les clés DKIM via 3 enregistrements CNAME, avec rotation automatique.

  • Custom MAIL FROM : sous-domaine configuré pour remplacer le domaine MAIL FROM par défaut (amazonses.com), requis pour l'alignement SPF DMARC.

  • BYODKIM : Bring Your Own DKIM - option pour utiliser vos propres clés DKIM au lieu de celles générées par SES (1 seul enregistrement TXT).

  • Configuration Set : ensemble de règles SES pour le suivi, les notifications d'événements et les politiques TLS.

  • Tenant : conteneur logique dans un compte SES, avec sa propre réputation, auquel on associe des identités, des configuration sets et des modèles d'e-mail.

  • Sandbox : mode initial des comptes SES limitant l'envoi à 200 emails/jour vers des adresses vérifiées uniquement.

  • Virtual Deliverability Manager (VDM) : fonctionnalité payante SES offrant un tableau de bord de métriques et des recommandations automatisées de délivrabilité.

Sources officielles

Articles similaires