MTA-STS : Imposer le chiffrement TLS sur vos emails
Tout comprendre sur MTA-STS pour proteger vos emails en transit contre les attaques par interception.
Qu'est-ce que MTA-STS ?
MTA-STS (Mail Transfer Agent Strict Transport Security) est un protocole defini dans la RFC 8461. Il permet a un domaine de declarer que ses serveurs mail supportent le chiffrement TLS et d'exiger que les serveurs expediteurs utilisent une connexion chiffree avec un certificat valide.
Sans MTA-STS, meme si vos serveurs supportent TLS, un attaquant effectuant une attaque man-in-the-middle (MITM) peut forcer une degradation de la connexion vers du texte clair (attaque par downgrade). L'attaquant peut alors intercepter et lire vos emails en transit.
MTA-STS resout ce probleme en publiant une politique qui ordonne aux serveurs expediteurs : "vous devez utiliser TLS avec un certificat valide pour m'envoyer des emails, sinon ne les envoyez pas du tout."
MTA-STS est complementaire a SPF, DKIM et DMARC : ces derniers protegent contre l'usurpation d'identite, tandis que MTA-STS protege la confidentialite des emails en transit.
Comment fonctionne MTA-STS ?
MTA-STS repose sur deux elements : un enregistrement DNS et un fichier de politique servi en HTTPS.
- Enregistrement DNS TXT — Le domaine publie un enregistrement TXT a
_mta-sts.votredomainepour signaler qu'il supporte MTA-STS. - Fichier de politique HTTPS — Le domaine heberge un fichier a
https://mta-sts.votredomaine/.well-known/mta-sts.txtqui definit la politique (mode, serveurs MX autorises, duree de validite). - Verification par le serveur expediteur — Avant d'envoyer un email, le serveur expediteur verifie l'enregistrement DNS et telecharge la politique. Si le mode est "enforce", il refuse d'envoyer l'email sans TLS valide.
L'enregistrement DNS ressemble a ceci :
Le fichier de politique ressemble a ceci :
Chaque champ a une signification precise :
version— Toujours STSv1 (obligatoire).mode—enforce(bloque sans TLS),testing(signale mais delivre) ounone(desactive).mx— Les serveurs MX autorises (wildcards acceptes).max_age— Duree de mise en cache de la politique en secondes (recommande : 86400 soit 24h).
Comment configurer MTA-STS etape par etape
Etape 1 : Creer le sous-domaine mta-sts
Creez un sous-domaine mta-sts.votredomaine qui pointe vers un serveur web capable de servir du contenu en HTTPS avec un certificat valide. Vous pouvez utiliser GitHub Pages, Cloudflare Pages, ou n'importe quel hebergement statique.
Etape 2 : Creer le fichier de politique
Creez le fichier /.well-known/mta-sts.txt sur votre sous-domaine avec le contenu suivant (adaptez les lignes mx a vos serveurs) :
Commencez en mode testing pour surveiller les problemes avant de passer en enforce.
Etape 3 : Ajouter l'enregistrement DNS
Ajoutez un enregistrement TXT dans votre zone DNS :
- Type : TXT
- Nom / Host : _mta-sts
- Valeur : v=STSv1; id=20260406T000000;
- TTL : 3600
L'identifiant (id) doit etre change a chaque modification de la politique pour invalider le cache des serveurs expediteurs.
Etape 4 : Verifier et passer en enforce
Testez votre configuration avec notre outil de verification gratuit. Une fois que tout fonctionne correctement en mode testing, changez le mode en enforce et mettez a jour l'identifiant dans l'enregistrement DNS.
Bonus : TLSRPT pour recevoir des rapports
TLSRPT (TLS Reporting, RFC 8460) est le complement ideal de MTA-STS. Il permet de recevoir des rapports des serveurs expediteurs lorsqu'ils rencontrent des problemes TLS avec votre domaine.
Ajoutez un enregistrement TXT a _smtp._tls.votredomaine :
Vous recevrez alors des rapports JSON quotidiens indiquant les echecs de negociation TLS, les certificats invalides et les tentatives de downgrade — exactement comme les rapports DMARC mais pour le chiffrement en transit.
Questions frequentes sur MTA-STS
Quelle est la difference entre MTA-STS et STARTTLS ?
STARTTLS est le mecanisme de negociation TLS entre serveurs mail. Le probleme est qu'il est "opportuniste" : si un attaquant supprime l'annonce STARTTLS du serveur (attaque par stripping), la connexion se fait en clair sans que personne ne soit prevenu. MTA-STS resout ce probleme en declarant de maniere independante (via HTTPS) que le TLS est obligatoire.
MTA-STS protege-t-il contre le spoofing ?
Non. MTA-STS protege la confidentialite des emails en transit (chiffrement), pas l'authenticite de l'expediteur. Pour se proteger contre le spoofing, vous devez configurer SPF, DKIM et DMARC.
Quels fournisseurs supportent MTA-STS ?
Google (Gmail / Google Workspace), Microsoft (Outlook / Microsoft 365) et Yahoo supportent MTA-STS cote expediteur. Cela signifie qu'ils respecteront votre politique MTA-STS lors de l'envoi d'emails vers votre domaine. Cote reception, vous devez le configurer vous-meme sur votre domaine.
Verifiez votre domaine gratuitement
Testez votre configuration SPF, DKIM, DMARC et MTA-STS en un clic. Notre outil analyse votre domaine et vous indique exactement ce qu'il faut corriger.
Tester mon domaine