Elastic Beanstalk をプライベートサブネットで起動する際に必要なアウトバウンドルールについて教えてください

2022.11.21

困っていた内容

Elastic Beanstalk をプライベートサブネットで起動しています。
セキュリティ要件上、Elastic Beanstalk 環境内の EC2 インスタンスのセキュリティグループにおいて、アウトバウンドルールを最低限の設定にする必要があります。
しかし、アウトバウンドルールに HTTPS で VPC の CIDR を設定しただけでは EC2 インスタンスにアプリケーションがインストールされず、HTTPS を 0.0.0.0/0 で設定したらインストールが成功しました。

Elastic Beanstalk をプライベートサブネットで起動する際に必要なアウトバウンドルールについて教えてください。

どう対応すればいいの?

プライベートサブネットにおいて、S3 のゲートウェイエンドポイント を使用している場合には、EC2 のセキュリティグループのアウトバウンドルールに HTTPS で S3 のプレフィックスリストを追加してください。

Elastic Beanstalk 環境内の EC2 インスタンスは、セットアップ時などに S3 へアクセスします。
その際、EC2 のセキュリティグループからのアウトバウンドルールに VPC の CIDR のみ指定している場合には、S3 へのアクセス経路がないため、セットアップやアプリケーションのインストールに失敗します。

そのため、EC2 のセキュリティグループのアウトバウンドルールに HTTPS で S3 のプレフィックスリストを追加してください。

なお、セキュリティグループではプレフィックスリスト自体を指定できるようになっているので、プレフィックスリストに含まれる IP アドレス範囲を個別に指定する必要はありません。

参考資料