AWS認定資格 WEB問題集&徹底解説
セキュリティ-専門知識
問題文と選択肢
・セキュリティグループ: インバウンドで 0.0.0.0/0 から 443番ポートへのアクセスを許可。アウトバウンドはデフォルト(すべて許可)のまま
・サブネットに関連付けたカスタムネットワーク ACL (NACL): インバウンドで 0.0.0.0/0 から 443番ポートへのアクセスを許可するルールのみを追加し、アウトバウンドはデフォルトの拒否のまま変更していない
インターネット上のクライアントがこの API にリクエストを送信し、正しく応答を受け取れるようにするために追加で必要な設定はどれか。
- NACL のアウトバウンドルールに、クライアントへの応答トラフィックを通すためエフェメラルポート範囲 (1024-65535) 宛のアクセスを許可するルールを追加する
- セキュリティグループはステートレスであるため、443番ポートからの応答をクライアントに返せるよう、アウトバウンドルールに 443番ポート宛の許可を明示的に追加する
- サブネットのルートテーブルに、エフェメラルポート範囲宛の戻りトラフィックをインターネットゲートウェイへ転送するルートを追加する
- 現在の設定で要件は満たされており、追加の設定は不要である
A. NACL のアウトバウンドルールに、クライアントへの応答トラフィックを通すためエフェメラルポート範囲 (1024-65535) 宛のアクセスを許可するルールを追加する
正解です。ネットワーク ACL はステートレスのため、往路(クライアント → 443)と復路(EC2 → クライアント)をそれぞれ明示的に許可する必要があります。
クライアントは自分のエフェメラルポートを送信元にして 443 番へ接続するため、EC2 が返す応答パケットの宛先ポートはクライアント側のエフェメラルポートになります。
アウトバウンドが既定の拒否のままだと応答が出て行けず、クライアントからは接続がタイムアウトしたように見えます。AWS も NACL では 1024〜65535 の送信許可を推奨しています。
B. セキュリティグループはステートレスであるため、443番ポートからの応答をクライアントに返せるよう、アウトバウンドルールに 443番ポート宛の許可を明示的に追加する
前提が逆です。セキュリティグループはステートフルで、インバウンドで許可した接続に対する応答は、アウトバウンドルールの内容にかかわらず自動的に許可されます。
さらに本問のセキュリティグループはアウトバウンドがデフォルト(すべて許可)のままなので、そもそも追加すべきものがありません。
「ステートレス」という語をセキュリティグループに取り違えさせる誤答です。
C. サブネットのルートテーブルに、エフェメラルポート範囲宛の戻りトラフィックをインターネットゲートウェイへ転送するルートを追加する
ルートテーブルの経路は宛先 CIDR とターゲットだけで決まり、ポート番号でルートを分けるという概念自体がありません。
また問題のサブネットはパブリックサブネットであり、0.0.0.0/0 をインターネットゲートウェイに向けるルートは既に存在しています。
通信が成立しない原因はルーティングではなく NACL の設定にあるため、この対応では解決しません。
D. 現在の設定で要件は満たされており、追加の設定は不要である
カスタム NACL のアウトバウンドが既定の拒否のままなので、EC2 からクライアントへの応答パケットがサブネットの外へ出られません。
インバウンドで 443 番を許可しただけでは、ステートレスな NACL の復路は開通しません。
したがって「追加の設定は不要」とはならず、要件は満たされていません。
NACL はステートレス、SG はステートフル。カスタム NACL は戻り用のエフェメラルポート許可を忘れずに。
正解への思考ルート
問題文から要件を抽出し、選択肢の適否を判断するのがポイントです。| 要件 | 判断ポイント |
|---|---|
| セキュリティグループはインバウンド 443 許可・アウトバウンドはデフォルト(すべて許可) | SG はステートフルで応答は自動的に許可される。しかもアウトバウンドは全許可のままなので手を入れる余地がない →選択肢(B)を消す |
| カスタム NACL はインバウンド 443 のみ許可・アウトバウンドは既定の拒否 | NACL はステートレスで、往路と復路を別々のルールで許可しなければ通信が成立しない →選択肢(D)を消す |
| クライアントへ応答を返せるようにする | 応答パケットの宛先はクライアント側のエフェメラルポート(1024-65535)なので、その範囲のアウトバウンド許可が要る →選択肢(A)が正解 |
| 経路(ルーティング)は足りているか | パブリックサブネットには 0.0.0.0/0 → IGW のルートが既にあり、ルートはポート番号で分けられない →選択肢(C)を消す |
ひっかけポイント
- 選択肢 B は「ステートレス」の主語をセキュリティグループにすり替えている。ステートレスなのは NACL の側で、SG はステートフル。用語の対応をそのまま問う定番のひっかけ
- 「インバウンドで 443 を許可したのだから通るはず」と考えるのが最大の罠。NACL の戻り通信は 443 番ではなくクライアントのエフェメラルポート宛になる
- 選択肢 C は「ルートテーブルにポート範囲のルートを追加」という存在しない設定。ルートは宛先 CIDR とターゲットしか持たない
- カスタム NACL は作成直後、インバウンド・アウトバウンドとも全拒否(デフォルト NACL は全許可)。「デフォルトのまま」がどちらを指すのかで結論が反転する
出題バリエーション
同じ知識が本番では条件を変えて出題されます。| 問題文がこう変わったら | 正解はこう変わる |
|---|---|
| 「NACL ではなくセキュリティグループのアウトバウンドを絞っている」 | 応答は SG のステートフル性で通るため通信は成立。論点は EC2 発の外向き通信(更新取得など)の可否に移る。 |
| 「クライアントが NAT ゲートウェイ経由のプライベートサブネットにいる」 | NAT ゲートウェイが使う 1024-65535 のエフェメラルポートを NACL で許可する話になる。 |
| 「特定の IP アドレスからのアクセスだけをブロックしたい」 | SG には拒否ルールが書けないため、NACL の Deny ルール(または AWS WAF)が正解に。 |
| 「NACL のルールが増えてどれが効くのか分からない」 | ルール番号の小さい順に評価し、最初に一致したルールで確定する評価順序が論点に。 |
| 「ALB を前段に置いた構成でアクセスできない」 | ALB を配置したサブネットの NACL と、EC2 側 SG のセキュリティグループ間参照の設定が論点に。 |
・セキュリティグループ: インバウンドで 0.0.0.0/0 から 443番ポートへのアクセスを許可。アウトバウンドはデフォルト(すべて許可)のまま
・サブネットに関連付けたカスタムネットワーク ACL (NACL): インバウンドで 0.0.0.0/0 から 443番ポートへのアクセスを許可するルールのみを追加し、アウトバウンドはデフォルトの拒否のまま変更していない
インターネット上のクライアントがこの API にリクエストを送信し、正しく応答を受け取れるようにするために追加で必要な設定はどれか。
- NACL のアウトバウンドルールに、クライアントへの応答トラフィックを通すためエフェメラルポート範囲 (1024-65535) 宛のアクセスを許可するルールを追加する
- セキュリティグループはステートレスであるため、443番ポートからの応答をクライアントに返せるよう、アウトバウンドルールに 443番ポート宛の許可を明示的に追加する
- サブネットのルートテーブルに、エフェメラルポート範囲宛の戻りトラフィックをインターネットゲートウェイへ転送するルートを追加する
- 現在の設定で要件は満たされており、追加の設定は不要である
次の問題
会員機能
お役立ち情報
- プレミアム会員のご紹介
- 「徹底解説」のご紹介
- 「模擬試験」のご紹介
- 収録問題と試験ガイドの対応
- 会員機能のご紹介
- おすすめの勉強方法
- AWSサービスの解説
- AWS認定資格の種類・対象者・受験料・合格ライン
- スマホのホーム画面に登録する方法
姉妹サイト
- CLF:AWS 認定クラウドプラクティショナー
- SAA:AWS 認定ソリューションアーキテクト-アソシエイト
- AIF:AWS 認定AIプラクティショナー
- SOA:AWS 認定CloudOpsエンジニア-アソシエイト
- DVA:AWS 認定デベロッパー-アソシエイト
- DEA:AWS 認定データエンジニア-アソシエイト
- MLA:AWS 認定機械学習エンジニア-アソシエイト
- SAP:AWS 認定ソリューションアーキテクト-プロフェッショナル
- DOP:AWS 認定DevOpsエンジニア-プロフェッショナル
- AIP:AWS 認定生成AIデベロッパー-プロフェッショナル
- SCS:AWS 認定セキュリティ-専門知識
- AZ-900:Microsoft Azure Fundamentals
- AI-900:Microsoft Azure AI Fundamentals