プライベートサブネットの AWS VPC ACL

プライベートサブネットの AWS VPC ACL

VPC ウィザードを使用して、2 つのサブネット (パブリックとプライベート) と、プライベート サブネットの前にある NAT を持つ VPC を作成しました。

サブネットのACLを見ると、 のすべてのINBOUNDトラフィックを許可するルールがありました0.0.0.0/0。NAT(IP 10.0.0.8)から来ていないすべてのインバウンドトラフィックを禁止したいので、ACLを のものと似たものに変更しますScenario 2http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Appendix_NACLs.html

つまり、ALLOWからのすべてのポートのすべてのプロトコル10.0.0.0/16、ただし は許可されません0.0.0.0/0

私のインスタンスにはインターネット アクセスがないため、これは正しく動作しないようです。動作させるために他に設定/変更する必要があるものはありますか?

答え1

パブリックにルーティング可能な IP アドレスは、NAT インスタンスを通過するときに書き換えられません。

ネットワーク ACL のプライベート サブネットでは、パブリック インターネット アドレス空間全体を許可されたままにしておく必要があります。プライベート サブネットにインターネット ゲートウェイがなく、そのデフォルト ルートが NAT インスタンスを指している場合、パブリック インターネット アドレスは NAT インスタンス経由で間接的にのみ到達します。

VPC ネットワーク ACL は、VPC 内のインスタンス間のアクセスを制限するのに役立ちますが、ステートレスな性質のため、説明しているタイプの構成では扱いにくくなります。許可された送信ルールに一致する接続を追跡して、対応する受信トラフィックを許可しないため、受信トラフィックに対して一時的なポート範囲を許可することで近似する必要があります。

より柔軟なアプローチとしては、VPC ルーティング、プライベート サブネット上のインターネット ゲートウェイの不在、およびiptablesNAT インスタンスの適切な構成を組み合わせて、パブリックにルーティング可能な IP 空間との間のトラフィックを制御しながら、プライベート サブネット インスタンスのネットワーク ACL をパブリックにルーティング可能な IP 空間に関してデフォルトで許可したままにすることです。このような環境では、NAT インスタンスが通過しない外部トラフィックからインスタンスを保護するには、プライベート サブネットに配置するだけで十分です。

関連情報