【ねっとわーくえーしーえる】

ネットワークACL とは?

最終更新:
💡 ネットワークの入口に置かれた『通行許可リスト』

通信の送信元・宛先・プロトコルなどの条件に基づき、許可や拒否を判断するアクセス制御のルール一覧。AWS VPCではサブネットの出入りに適用する仕組みを指し、戻りの通信も別に許可する必要がある。

📌 このページのポイント
AWSのネットワークACL小さい番号から最初の一致を使う受信:192.0.2.8 → TCP 443サブネットに入る通信を評価100:192.0.2.8/32 を拒否✓ 一致 → 拒否して評価終了200:ほかの送信元を許可今回はここを評価しない上の例は、どちらもTCP 443のルール戻りの通信も別方向の許可が必要AWSではサブネットの出入りに適用
評価順を説明するための例で、本番用の設定例ではありません。
ひよこ ひよこ
ネットワークACLって、何を見て通すの?
ペンギン先生 ペンギン先生
IPアドレスやプロトコル、TCPやUDPならポート番号など、通信の条件をルールと照合するよ。許可か拒否かを決めるためのルール表、と考えると分かりやすいね。条件や評価方法は製品によって確認しよう
ひよこ ひよこ
AWSで聞くACLは、どこで働くの?
ペンギン先生 ペンギン先生
VPCのネットワークACLはサブネット単位だよ。サブネットに入る通信と出る通信に適用され、同じサブネット内でルーティングされる通信に使うものではない。サブネットに対応付けるACLは一度に1つだけど、1つのACLを複数サブネットで使うことはできるんだ
ひよこ ひよこ
許可と拒否のルールが両方合ったら?
ペンギン先生 ペンギン先生
AWSのNACLは小さい番号から評価し、最初に一致したルールが決めるよ。たとえば100番で特定の送信元を拒否し、200番で広い範囲を許可すれば、その特定の送信元は100番の拒否になる。広い許可を先に置けば結果が変わるんだ
ひよこ ひよこ
セキュリティグループと同じに考えていい?
ペンギン先生 ペンギン先生
AWSでは違いがあるよ。セキュリティグループはステートフルで、許可した通信の応答は自動的に許可される。NACLはステートレスなので、応答の方向とポートもルールで許可する必要がある。「行きが通るのに返事が来ない」時の確認点だね
ひよこ ひよこ
これだけで、すべての攻撃を防げる?
ペンギン先生 ペンギン先生
防げないよ。通信の条件を絞る役割と、アプリの入力や権限を確認する役割は別なんだ。AWSのNACLにはRoute 53 ResolverへのDNSなど、対象外の通信もある。構成や守りたい範囲に応じてセキュリティグループやアプリ側の対策と組み合わせよう
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ネットワークACL」って出てきたら「通信を通すか止めるかを決めるルール表」と思えばだいたいOK!
📖 おまけ:英語の意味
「Network Access Control List」 = ネットワークアクセス制御リスト
💬 ACLは『Access Control List(アクセス制御リスト)』の略で、誰を通して誰を止めるかのルール表だよ

参考資料

← 用語集にもどる