設定できるルールが違う
セキュリティグループ | 許可するポート番号と送信元IPの組み合わせを登録する。 |
ネットワークACL | ポート番号と送信元IPの組み合わせと許可or拒否を登録する。 |
設定対象が違う
ネットワークACL | サブネットに対して設定する。 その結果、サブネット内の全リソースに適用される。 |
セキュリティグループ | EC2/ロードバランサー/RDSなどにの各リソース対して設定する。 |
上記のことから、ネットワークACLの方がセキュリティのレイヤーとしては上位、先に来ることになる。
使い分け
組み合わせて使う。
ネットワークACLで基本的な制御を行い、各リソースに対してはセキュリティグループで詳細に制御する。
一般的には、ネットワークACLで全て拒否(基本的な制御)しておき、セキュリティグループで許可するものだけ登録(詳細な制御)するという使われ方らしい。