web-dev-qa-db-ja.com

EC2はELBの背後でSESメールを送信できません

Elastic Load Balancerの背後にあるEC2でwikiを実行します。EC2にはパブリックIPがなく、インターネットからのトラフィックはRoute53を介してELBにルーティングされます。ウィキがメールを送信していないことに気づきました。トラブルシューティング中に、Elastic IPを追加すると、ウィキはメールを正常に送信することに気付きました。データベースとEC2は同じVPC、リージョン、アカウントの一部ですが、EC2とSimple EmailServiceは異なるAWSアカウントに属していることに注意してください。

EC2のセキュリティグループ、ELBセキュリティグループ、VPCネットワークACLを確認しましたが、これらはすべてどこでもアウトバウンドトラフィックを許可しているため、SESに接続できない理由がわかりません。

理想的には、Eメールを送信するためにEC2にパブリックIPは必要ありません。

チェックする必要があるものはありますか、またはこれを機能させるための既知の方法はありますか?

2
Purefan

EC2インスタンスにElasticIPを追加できるため、パブリックサブネットにあると想定しています。セットアップでは、EC2インスタンスからインターネット(別のリージョンのSESエンドポイント)に到達できません。ただし、(同じパブリックサブネット内の)ロードバランサーはEC2インスタンスに到達できるため、サイトは機能しています。

最も簡単な解決策は、EC2インスタンスをプライベートサブネット(データベースがあるサブネットなど)に配置することです。次に、NATゲートウェイ経由でインターネットにルーティングでき、SES経由でメールを正常に送信できるはずです。

回避策は、パブリックIPをインスタンスに割り当てることです。エラスティックIPである必要はありません。

2
M. Glatki