AWS VPCでのネットワークACLとセキュリティグループのハマリポイント | ライタス株式会社

AWSでVPCを扱うとき、セキュリティポリシーとして、通信制御を行うと思います。

通信制御をするときは、ネットワークACLとセキュリティグループを活用して設定しますが、ここで幾つかハマりポイントがあります。


1. ステートレスとステートフル


ネットワークACLステートレスインスペクション
セキュリティグループステートフルインスペクション


ステートレスとは、指定したポートのみを通すもので、他のポートは通信を拒否します。
ステートフルは、指定したポートを通しますが、その通信の戻り通信も許可します。

http://docs.aws.amazon.com/ja_jp/AmazonVPC/latest/UserGuide/VPC_Security.html


2. 設定単位


ネットワークACLサブネット単位
セキュリティグループENIおよびグループ単位

ネットワークACLは、VPC内に定義されたサブネット単位で作成できます。
セキュリティグループは、サーバーごとに設定するイメージですが、実態としては、ネットワークカードに対して設定するイメージと捉えています。


3. ネットワークACLとセキュリティグループを両方使う


ネットワークACLとセキュリティグループを両方使う場合、両方許可されないと通信ができなくなります。

ネットワークACLセキュリティグループ結果
許可許可許可
許可拒否拒否
拒否許可拒否
拒否拒否拒否


4. ハマリポイント

上記ルールに従って通信制御を行うことができますが、ネットワークACLがステートレスのため、ちゃんと通信ポートが開いてると思っているのに、開いていなかったということがよくあります。
また、戻りの通信ポートがダイレクトポートを使っている場合、ネットワークACLで拒否されてしまって、通信できなかったということが
検証方法としては、ネットワークACLかセキュリティグループを一瞬フルオープンにして通信できるかどうか確認する方法をよく使います。

他にも、AWS全体に言えることですが、設定上限になっているものが結構あります。
事前に把握しておくと良いかと思います。




コメント

このブログの人気の投稿

Firefoxを起動したら、Couldn't load XPCOM. というエラーが出る時の対処法 | ライタス株式会社

マテビュー(マテリアライズドビュー:Materialized View)のせいで、表領域が削除ができない | ライタス株式会社

[Virus Error]と件名に挿入されたメール