変更要約: ANS-C01 第6章を深掘り(SG/NACL評価順序・SG参照/エフェメラル・検査VPCルーティング/アプライアンスモード/各FWの守備範囲・Shield Adv/WAF Web ACL/Firewall Mgr前提/ACMリージョン+比較表・シナリオ・FAQ・ひっかけ、図ja化)
6.1多層防御とトラフィック制御
層で守る——セキュリティグループ(ステートフル)、NACL(ステートレス)、多層防御、最小権限のネットワーク——を理解します。各層で重ねて守ります。
ネットワークセキュリティは多層防御が基本です。エッジ・サブネット・インスタンス・アプリ/データの各層で重ねて守り、1 つが破られても次の層で食い止めます。
6.1.1防御の層
- セキュリティグループ:インスタンス(ENI)単位・ステートフル。許可ルールのみ(拒否は書けない)。
- NACL:サブネット単位・ステートレス。許可と拒否を書け、粗い境界制御に向く。
- 多層防御:エッジ(WAF/Shield)→サブネット(NACL)→インスタンス(SG)→データ(暗号化)を重ねる。
- 最小権限:必要な送信元/ポートだけを許可し、広い 0.0.0.0/0 許可は避ける。
「SG=インスタンス単位・ステートフル・許可のみ」「NACL=サブネット単位・ステートレス・許可/拒否可」「特定 IP をブロック=NACL(SG は拒否ルールを書けない)」 は ANS-C01 で頻出です。「ある IP だけ遮断したい」は NACL の出番です。
ANS-C01 では SG と NACL の評価順序・スケール時の上限・SG 参照という実装の機微が問われます。両者はそれぞれ独立に評価され、通信が成立するには双方を通過する必要があります。NACL は番号順(小さいルールから)に評価し最初に一致したルールで確定するため、広い許可ルールの前に狭い拒否ルールを置く番号設計が重要で、ステートレスゆえに戻り通信用のエフェメラルポート範囲(1024-65535)の許可も明示が要ります。SG では送信元に IP/CIDR だけでなく別の SG を参照でき(例:ALB の SG を許可元に指定)、インスタンスが増減しても IP を書き換えずに済むスケーラブルな設計ができます。SG はステートフルなので戻りは自動許可ですが、TCP コネクションの追跡には限りがあり、極端な接続数では追跡対象外(untracked)になる挙動も押さえます。上限の感覚も重要で、SG は ENI あたりの SG 数やルール数に既定上限があり、整理にはプレフィックスリストでまとめて参照すると管理が楽になります。多層防御の各層は役割が異なり、L7 の攻撃は WAF、サブネット境界の粗い遮断は NACL、ワークロード単位の最小権限は SG、というように適材適所で重ねます。
| 観点 | セキュリティグループ | NACL |
|---|---|---|
| 適用単位 | ENI(インスタンス) | サブネット |
| 状態 | ステートフル(戻り自動) | ステートレス(双方向明示) |
| ルール | 許可のみ | 許可と拒否 |
| 評価 | 全ルールの論理和(順序なし) | 番号順・最初の一致で確定 |
| 送信元参照 | 別 SG を参照可 | IP/CIDR のみ |
シナリオ:3 層 Web(ALB→アプリ→DB)で、アプリは ALB からのみ、DB はアプリからのみ受け付け、インスタンスのスケールで IP が変わっても設定を変えたくない。→ 各層の SG で送信元に下位層の SG を参照する(アプリ SG のインバウンドに ALB SG、DB SG のインバウンドにアプリ SG を許可)。IP ではなく SG 参照にすることで、台数の増減に追随し最小権限を保てる。
FAQ:Q. SG で特定 IP を拒否したい? A. できない(許可のみ)。サブネット境界での拒否は NACL を使う。Q. NACL を厳しくしたら戻りが切れた? A. ステートレスのため、戻り用エフェメラルポート(1024-65535)のアウト/インを許可していないのが原因。Q. SG 参照と IP 許可どちらが良い? A. スケールするワークロードは SG 参照が保守しやすい。
ひっかけ:「SG で許可したのだから NACL は気にしなくてよい」は誤り。両者は独立評価で、どちらかが拒否すれば通らない。逆に「NACL を緩くすれば SG を緩めなくても通る」も誤り。さらに NACL はステートレスなので、許可方向だけでなく戻り(エフェメラルポート)も明示が必要、という点が定番の落とし穴。
6.1.2この節のまとめ
- SG=ENI・ステートフル・許可のみ/NACL=サブネット・ステートレス・許可/拒否
- 守りは多層で、許可は最小権限
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. 特定の悪意ある IP アドレスからのアクセスだけをサブネット全体で明示的にブロックしたい。何を使いますか?
Q2. セキュリティグループの特徴として正しいものはどれですか?
Q3. ネットワークセキュリティの設計方針として最も適切なのはどれですか?

