AWS SAA 試験勉強(16日目)
投稿日:2026/03/16
- AWS SAAにおいて、VPC設計はすべての基本です。
- 単に「繋がる」だけでなく、「外部からの侵入を防ぎつつ、必要な通信だけを許可する」という設計判断が問われます。
1. 標準的な「Public / Private」構成のベストプラクティス
試験で最も推奨されるのは、リソースの役割に応じてサブネットを分ける構成です。
パブリックサブネット(Public Subnet)
- 定義: ルートテーブルに「インターネットゲートウェイ(IGW)」へのルートがあるサブネット。
- 配置リソース: ALB(ロードバランサー)、NATゲートウェイ、踏み台サーバー(Bastion)。
- ポイント: EC2やDBを直接ここに置くのは、セキュリティ要件が厳しい試験では基本的に「NG」です。
プライベートサブネット(Private Subnet)
- 定義: インターネットから直接アクセスできないサブネット。
- 配置リソース: Webサーバー(EC2)、アプリサーバー、データベース(RDS)。
- ポイント: 外部からの直接攻撃リスクを最小化します。
2. プライベートサブネットからのインターネット接続(NAT Gateway)
プライベートサブネットにあるEC2が、OSアップデートや外部API取得のために「外向き」の通信が必要な場合、NAT ゲートウェイを使用します。
NAT ゲートウェイの設計ルール
- 配置場所: パブリックサブネットに配置します(プライベートに置くと外に出られません)。
- 冗長化: NATゲートウェイはAZ(アベイラビリティゾーン)単位のサービスです。高可用性を実現するには、各AZに1つずつ配置するのが試験の正解パターンです。
- コスト: NATゲートウェイは時間料金と処理データ量に応じて課金されます。コスト削減が最優先の場合は、1つだけの配置を検討しますが、可用性は低下します。
3. 安全な管理アクセスの実現:Bastion vs Session Manager
プライベートサブネットのEC2にSSH/RDP接続してメンテナンスしたい場合、2つの選択肢があります。
踏み台サーバー(Bastion Host)
- パブリックサブネットに「管理用EC2」を1台置き、そこを経由してプライベートのサーバーへ接続します。
- デメリット: 踏み台自体のパッチ管理が必要、ポート22を公開するリスクがある。
AWS Systems Manager Session Manager
- 試験のポイント: 「踏み台サーバーを管理したくない」「セキュリティを最大化したい」という場合は、こちらを使用します。
- メリット:
- インターネットゲートウェイや踏み台サーバーが不要。
- IAM権限のみでアクセス制御が可能。
- 操作ログがすべて記録される。
4. ネットワークセキュリティの二重防御
セキュリティグループ(Security Group)
- インスタンス単位のファイアウォール。
- ステートフル: 戻りの通信を自動的に許可します。
- 設定: 「Webサーバーからの通信のみDBへ許可」といった参照設定(セキュリティグループID指定) が推奨パターンです。
ネットワークACL(NACL)
- サブネット単位のファイアウォール。
- ステートレス: 行きと戻りの両方の通信を明記する必要があります。
- 用途: 特定のIPアドレスを「拒否(Deny)」したい場合に使用します。
5. VPC設計における高可用性のポイント
試験問題で「高可用なVPC設計」を求められたら、以下の構成が揃っているか確認しましょう。
- マルチAZ: 少なくとも2つのAZにサブネットを分散。
- 冗長なNAT: 各AZにNATゲートウェイを配置。
- 冗長なルーター: 各AZのルートテーブルでそれぞれのNATゲートウェイを指定。
試験での「判断基準」チェックリスト
- 「データベースを最も安全に配置したい」
- 回答:プライベートサブネットに配置し、パブリックIPは付与しない。
- 「プライベートサブネットのEC2がパッチ更新のためにネット接続したい」
- 回答:パブリックサブネットに NAT ゲートウェイ を置く。
- 「踏み台サーバーの運用負荷を減らし、SSHポートを閉じたい」
- 回答:AWS Systems Manager Session Manager を利用する。
- 「特定の悪意あるIPアドレスからのアクセスをブロックしたい」
- 回答:ネットワークACL(NACL) で明示的な Deny ルールを追加する。
まとめ(16日目の振り返り)
- VPCは「Public(入り口)」と「Private(守るべき場所)」を明確に分けることが鉄則です。
- また、通信の流れ(Inbound / Outbound)を理解し、NATゲートウェイやセキュリティグループを正しく配置できるかどうかが、設計問題の合否を分けます。