Comment héberger des politiques MTA-STS dynamiques pour plusieurs domaines avec AWS
Ce guide s'adresse aux personnes qui souhaitent configurer MTA-STS (Mail Transfer Agent Strict Transport Security) et qui utilisent déjà AWS (Amazon Web Services) dans le cadre de leur infrastructure technologique.
Pour y parvenir, nous utiliserons les applications AWS suivantes :
- Lamda
- Passerelle API
- Gestionnaire de certificats
- Route 53
Remarque : ce guide utilise de nombreuses valeurs par défaut qui peuvent ne pas convenir à la politique de sécurité de votre organisation ou à la configuration AWS existante. Veuillez en tenir compte lors de la configuration dans votre environnement de production.
Étape 1 : Créer la fonction Lambda
Tout d'abord, nous avons besoin d'une fonction qui serve de serveur de politiques. Lorsqu'un serveur de messagerie (comme Gmail ou Outlook) se connecte à mta-sts.example.com, il envoie une requête GET à /.well-known/mta-sts.txt.
Notre fonction Lambda examinera l'en-tête Host de la requête afin de déterminer quelle politique appliquer.
- Accédez à la console Lambda et cliquez sur Créer une fonction.
- Nommez votre fonction, par exemple mta-sts-handler.
- Choisissez le runtime Python 3.x
- Cliquez sur Créer une fonction
- Collez le code suivant, modifiez les domaines et les politiques selon vos besoins, puis cliquez sur Déployer.

Étape 2 : Créez des certificats pour vos domaines
L'étape suivante consiste à créer des certificats de domaine. N'oubliez pas que nous demandons des certificats pour le sous-domaine mta-sts. Dans ce guide, nous utilisons mta-sts.example.com et mta-sts.example.org.
Les certificats garantissent que nous pouvons effectuer la requête GET via HTTPS.
- Accédez à la console Certificate Manager, puis cliquez sur Request.
- Sélectionnez Demander un certificat public, puis cliquez sur Suivant.
- Entrez le nom de domaine complet mta-sts.example.com. Dans ce guide, nous utiliserons la validation DNS comme méthode de validation, puis cliquons sur Demander.
- Créez un enregistrement CNAME dans votre DNS en utilisant le nom CNAME et la valeur CNAME fournis.
Le statut de votre certificat devrait désormais passer de « en attente de validation » à « émis par Amazon ». Vous pouvez maintenant répéter les étapes 1 à 4 pour chacun de vos domaines.

Étape 3 : Créer l'API
Nous devons maintenant exposer la fonction Lambda à Internet.
- Accédez à la console API Gateway et cliquez sur Créer une API.
- Cliquez sur Créer pour l'API HTTP.
- Nommez votre API, par exemple mta-sts-handler.
- Cliquez sur Ajouter une intégration, sélectionnez Lambda, puis sélectionnez votre fonction Lambda et cliquez sur Suivant.

- Cliquez sur Ajouter un itinéraire avec les attributs suivants, puis cliquez sur Suivant:
- Méthode : GET
- Chemin d'accès à la ressource : /.well-known/mta-sts.txt
- Cible : mta-sts-handler
- Laissez le nom de scène $default et cliquez sur Suivant.
- Vérifiez et cliquez sur Créer.
Étape 4 : Attribuer les noms de domaine à l'API
Nous allons maintenant créer nos noms de domaine personnalisés sur API Gateway, leur attribuer les certificats que nous avons créés à l'étape 2 et mapper le nom de domaine à l'API que nous avons créée à l'étape 3.
- Accédez à Noms de domaine personnalisés dans le menu API Gateway et sélectionnez Ajouter un nom de domaine.
- Entrez le nom de domaine, par exemple mta-sts.example.com, la politique de sécurité TLS 1.2, puis sélectionnez le certificat correspondant que vous avez créé à l'étape 2 pour le certificat ACM. Cliquez sur Ajouter un nom de domaine.
- Vous serez redirigé vers une page récapitulative de votre domaine personnalisé. En bas de la page, cliquez sur Configurer les mappages API.
- Cliquez sur Ajouter un nouveau mappage avec les attributs ci-dessous, puis cliquez sur Enregistrer.
- API : mta-sts-handler
- Étape : $default
- Chemin : **laisser vide
- Répétez cette étape pour chacun de vos domaines.
Étape 5 : Configurez votre DNS
Il ne reste plus qu'à rediriger votre domaine vers le nom de domaine API Gateway. Pour ce faire, nous utiliserons AWS Route 53.
- Accédez à la console Route 53, sélectionnez Zones hébergées, puis choisissez votre domaine.
- Cliquez sur Créer un enregistrement
- Définissez les valeurs suivantes :
- Nom de l'enregistrement : mta-sts
- Type d'enregistrement : A
- Alias : vérifier
- Rediriger le trafic vers :
- Alias vers l'API Gateway API,
votre région,
nom de domaine API Gateway
- Alias vers l'API Gateway API,
- Cliquez sur Créer des enregistrements

Vérifiez que votre fichier de politique est valide.
Maintenant que toutes les étapes sont terminées, nous devons vérifier que tout fonctionne comme prévu. Pour cela, deux méthodes sont possibles.
La première option consiste à utiliser notre outil TLS & MTA-STS Inspector. Celui-ci garantira non seulement que votre fichier de politique est correctement pris en charge, mais vérifiera également la validité de vos enregistrements TLS et MTA-STS. L'outil TLS & MTA-STS Inspector est disponible uniquement via notre plateforme de gestion DMARC, dans le cadre d'un abonnement ou d'un essai gratuit.

Vous pouvez également saisir l'URL dans votre navigateur. Si tout fonctionne correctement, votre fichier de politique s'affichera sans avertissement de sécurité de la part de votre navigateur, comme illustré ici :

Comment dmarcian peut vous aider
Avec une équipe d'experts en sécurité des e-mails et pour mission de rendre les e-mails et Internet plus fiables, dmarcian est là pour vous aider à évaluer le catalogue de domaines d'une organisation et à mettre en œuvre et gérer la sécurité des e-mails sur le long terme. Vous pouvez vous inscrire pour un essai gratuit, au cours duquel notre équipe d'intégration et d'assistance vous aidera tout au long du processus.
Vous souhaitez poursuivre la conversation ? Rendez-vous sur le Forum dmarcian.