Pourquoi ne puis-je pas envoyer un e-mail SES depuis une instance EC2 ou Lambda située dans un Amazon VPC privé ?

Lecture de 3 minute(s)
0

Je souhaite utiliser Amazon Simple Email Service (SES) pour envoyer des e-mails depuis une instance Amazon Elastic Compute Cloud (Amazon EC2) ou une fonction AWS Lambda intégrée à un Amazon Virtual Private Cloud (VPC).

Brève description

Par défaut, les instances Amazon EC2 et les fonctions Lambda que vous déployez dans un Amazon VPC ne disposent pas d'un accès direct à Internet. Pour envoyer des e-mails, l'API Amazon SES nécessite une connexion Internet sortante pour communiquer avec le service Amazon SES.

Résolution

Utiliser l'interface SMTP d'Amazon SES avec un point de terminaison de VPC Amazon

Pour utiliser l'interface SMTP (Simple Mail Transfer Protocol) d'Amazon SES pour envoyer des e-mails, procédez comme suit :

  1. Créez un nouveau point de terminaison de VPC Amazon pour le service SMTP Amazon SES dans votre Amazon VPC.
    Remarque : Les points de terminaison de VPC Amazon ne prennent pas en charge les requêtes dans les régions AWS. Créez votre point de terminaison dans la même région que celle à partir de laquelle vous souhaitez émettre des appels d'API.
  2. Vérifiez que les listes de contrôle d'accès (ACL) de votre instance ou de votre fonction Lambda autorisent le trafic sortant vers le point de terminaison SMTP Amazon SES. Si vous utilisez une fonction Lambda, vérifiez que vous avez associé le point de terminaison SMTP Amazon SES aux mêmes sous-réseaux que votre fonction Lambda.
  3. Mettez à jour votre application pour utiliser le protocole SMTP et connectez-vous au point de terminaison SMTP Amazon SES.

Connecter l'API Amazon SES à Internet

Prérequis : Vérifiez que le rôle d'instance ou le rôle d'exécution Lambda possède les autorisations ses:SendEmail et ses:SendRawEmail. Vérifiez également l'identité de votre adresse e-mail ou l'identité de votre domaine.

Pour utiliser l'API Amazon SES, configurez une passerelle NAT dans un sous-réseau public afin de permettre l'accès à Internet depuis vos sous-réseaux privés. Vous pouvez également déployer et configurer un serveur proxy dans un sous-réseau public pour transférer le trafic Internet depuis vos sous-réseaux privés.

Puis, testez votre connexion aux points de terminaison SMTP d'Amazon SES.

Remarque : Par défaut, Amazon EC2 limite le trafic sortant sur le port SMTO 25 sur toutes les instances.

Informations connexes

Utilisation de l’interface SMTP d’Amazon SES pour envoyer des e-mails

Permettre aux fonctions Lambda d'accéder aux ressources d'un Amazon VPC

Comment résoudre les problèmes de connectivité SMTP ou de délai d’expiration avec Amazon SES ?