Amazon SES : guide complet de configuration DNS et authentification email
Par CaptainDNS
Publié le 20 janvier 2026

- Amazon SES offre un envoi email à 0.10$/1000 emails avec 7 régions EU pour la conformité RGPD.
- Easy DKIM génère 3 CNAME qui servent à la fois de vérification de domaine et de signature DKIM (rotation auto tous les 90 jours).
- 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).
Pourquoi Amazon SES mérite votre attention ?
Amazon SES traite plus d'un trillion d'emails par an depuis son lancement en 2011. Avec une tarification à 0.10$ pour 1 000 emails (sans paliers de volume), c'est l'option la plus économique pour l'envoi transactionnel et marketing.
Ce qui change la donne :
- API v2 (septembre 2019) : messages jusqu'à 40 MB, gestion native des unsubscribes, headers custom sans passer par Raw email
- 7 régions EU : Frankfurt, Ireland, London, Paris, Stockholm, Milan, Zurich - DPA RGPD inclus automatiquement
- Virtual Deliverability Manager : dashboard 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

Quand vous envoyez via SES :
- Votre application appelle l'API v2 ou utilise SMTP
- SES signe le message avec votre clé DKIM (domaine
d=captaindns.com) - 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 tous les 90 jours
{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
Taille de clé : RSA 2048-bit par défaut (recommandé). La rotation gère automatiquement les rôles active/passive/pending entre les 3 CNAME.
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) :
| Type | Name | Value | Priority |
|---|---|---|---|
| MX | mail.captaindns.com | feedback-smtp.eu-west-1.amazonses.com | 10 |
| TXT | mail.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). AWS recommande toutefois de le configurer :
captaindns.com TXT "v=spf1 include:amazonses.com ~all"
Alignement DMARC : configuration pour p=reject

Ce qui fonctionne (et ce qui casse)
Alignement DKIM (méthode principale) :
| Configuration | Aligné ? | DMARC via DKIM ? |
|---|---|---|
| Email vérifié seul (pas de domaine DKIM) | Non | Non |
| Domaine avec Easy DKIM activé | Oui | Oui |
| Domaine avec BYODKIM | Oui | Oui |
Alignement SPF :
| Configuration | Aligné ? | DMARC via SPF ? |
|---|---|---|
MAIL FROM par défaut (amazonses.com) | Non | Non |
| Custom MAIL FROM + aspf=r (relaxed) | Oui | Oui |
| Custom MAIL FROM + aspf=s (strict) | Non | Non (mismatch subdomain) |
Enregistrement DMARC recommandé
_dmarc.captaindns.com TXT "v=DMARC1;p=reject;adkim=r;aspf=r;rua=mailto:dmarc@captaindns.com"
Points clés :
adkim=retaspf=r: alignement relaxed (autorise les sous-domaines)- Progressez de
p=none→p=quarantine→p=reject - Surveillez les rapports
ruaavant de durcir
Tableau récapitulatif DNS
| Type | Host/Name | Value | Obligatoire |
|---|---|---|---|
| CNAME | {token1}._domainkey.captaindns.com | {token1}.dkim.amazonses.com | Oui (Easy DKIM) |
| CNAME | {token2}._domainkey.captaindns.com | {token2}.dkim.amazonses.com | Oui (Easy DKIM) |
| CNAME | {token3}._domainkey.captaindns.com | {token3}.dkim.amazonses.com | Oui (Easy DKIM) |
| MX | mail.captaindns.com | feedback-smtp.{region}.amazonses.com | Oui (Custom MAIL FROM) |
| TXT | mail.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é |
| CNAME | track.captaindns.com | r.{region}.awstrack.me | Optionnel (tracking) |
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 MB (vs 10 MB en v1)
- Headers custom natifs (List-Unsubscribe sans Raw email)
ListManagementOptionspour la gestion des listes
Interface SMTP
Endpoint : email-smtp.{region}.amazonaws.com
| Port | Protocole | Recommandation |
|---|---|---|
| 25 | STARTTLS | Souvent bloqué par ISPs |
| 465 | TLS implicite | Alternative |
| 587 | STARTTLS | Recommandé |
| 2587 | STARTTLS | Alternative au 587 |
Headers X-SES-* disponibles :
X-SES-CONFIGURATION-SET: associer un configuration setX-SES-MESSAGE-TAGS: ajouter des tags (key=value)
Quotas et limites à connaître
| Quota | Sandbox | Production |
|---|---|---|
| Emails/24h | 200 | ~50 000-100 000 (initial) |
| Taux d'envoi | 1/sec | ~14-50/sec (initial) |
| Destinataires/message | 50 | 50 |
| Taille message (API v2) | 40 MB | 40 MB |
Sortir du sandbox : via Console SES ou AWS CLI, délai ~24h si demande complète.
Seuils de réputation : les chiffres critiques

| Métrique | Warning | Maximum | Action |
|---|---|---|---|
| Bounce Rate | 5% | 10% | Account review |
| Complaint Rate | 0.1% | 0.2% | Account review |
Bonnes pratiques :
- Activer la account-level suppression list (auto-supprime les hard bounces)
- Configurer des alertes CloudWatch sur
Reputation.BounceRateetReputation.ComplaintRate - Soft bounces : SES retry automatiquement pendant 12h
Tarification 2025
| Composant | Prix |
|---|---|
| Emails envoyés | $0.10 / 1 000 |
| Données sortantes (attachments) | $0.12 / GB (1er GB gratuit) |
| IP dédiée standard | $24.95 / mois / IP |
| Managed Dedicated IPs | $15/mois + $0.08-0.02/1000 selon volume |
| Virtual Deliverability Manager | $0.07 / 1 000 emails |
Free tier (nouveaux comptes) : 3 000 emails/mois pendant 12 mois.
Plan d'action : configuration en 6 étapes
- Créer une identité domaine dans la console SES (région EU de votre choix)
- Configurer Easy DKIM : publier les 3 CNAME fournis par SES
- Attendre la vérification : jusqu'à 72h pour la propagation DNS
- Configurer Custom MAIL FROM : créer le sous-domaine avec MX et TXT SPF
- Publier l'enregistrement DMARC : commencer par
p=none, monitorer les rapports - Sortir du sandbox : soumettre la demande de production access
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 EU choisir pour le RGPD ?
Les 7 régions EU (Frankfurt, Ireland, London, Paris, Stockholm, Milan, Zurich) sont toutes conformes RGPD avec DPA inclus automatiquement. 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 ?
Non. Un seul CNAME est actif (résout avec une clé publique p=...) à un moment donné. Les deux autres sont en rotation (passive/pending). SES gère automatiquement la rotation tous les ~90 jours.
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 headers DKIM et SPF reçus.
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 tracking, les notifications d'événements et les politiques TLS.
-
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 dashboard de métriques et des recommandations automatisées de délivrabilité.


