【VPCの役割(セキュリティ設計)】
目次
🔍 1. 結論
💎 一言でいうと Amazon VPCは、AWS上のリソースをインターネットから隔離し、「パブリックサブネット(外部公開)」と「プライベートサブネット(内部隠蔽)」 に分けて配置することで、安全なネットワーク基盤を作るサービスです。
- DBなどは必ずインターネットから遮断された プライベートサブネット に置く。
- 通信の制御は セキュリティグループ(ステートフル) と ネットワークACL(ステートレス) で行う。
- AWSの各サービス(S3など)への通信をインターネットに出さないためには VPCエンドポイント を使う。
📈 2. SAAで出やすいポイント
- パブリックとプライベートの分離: Webサーバーはパブリック、DBサーバーはプライベートに置くのが鉄則。
- セキュリティグループ (SG) と NACL:
- SGはインスタンスレベル。許可(Allow)のみ設定可能。戻りの通信は自動許可(ステートフル)。
- NACLはサブネットレベル。許可と拒否(Deny)が設定可能。戻りの通信も明示的に許可が必要(ステートレス)。
- NATゲートウェイ: プライベートサブネットからインターネットへ(パッチのダウンロード等)安全に出るためにパブリックサブネットに配置する。
- VPCエンドポイント (AWS PrivateLink): S3やDynamoDBへ通信する際、インターネットを経由せずAWSのプライベート網を通るための入り口。
🗝 3. キーワードでの判断
| 問題文のキーワード | 疑うサービス・構成 |
|---|---|
| 🛡️ 「インターネットに公開したくない」「安全に配置」 | プライベートサブネット |
| 🛑 「特定の悪意あるIPをブロックしたい」 | ネットワークACL (NACL) のDenyルール |
| 🌐 「インターネットに出ずにS3へアクセスしたい」 | VPCエンドポイント (ゲートウェイ型 / インターフェイス型) |
| ⬇️ 「プライベートサブネットから更新プログラムをDL」 | NATゲートウェイ |
⚠️ 4. ひっかけポイント
🚫 よくある誤答パターン – 「セキュリティグループで特定IPを拒否する」 → SGには「拒否(Deny)」が設定できない。拒否は NACL の仕事。 – 「DBをパブリックサブネットに配置する」 → セキュリティ的に大罪。必ずプライベートサブネットへ。 – 「NATゲートウェイをプライベートサブネットに置く」 → NAT自体がインターネットに出るため、パブリックサブネットに置かなければならない。
💡 5. 覚え方
🧠 暗記ショートカット – VPC = 「自分だけの要塞」。 – パブリック = 「要塞の中庭(外部から見える)」。 – プライベート = 「要塞の地下室(外部から見えない)」。 – SG = 「部屋の鍵(インスタンス単位)」。 – NACL = 「階の警備員(サブネット単位)」。
📚 6. 関連サービス
| アイコン | サービス名 | 役割 |
|---|---|---|
| 🚪 | Security Group | EC2インスタンスレベルのアクセス制御 |
| 🧱 | NACL | サブネットレベルのアクセス制御(拒否が可能) |
| 🌐 | VPC Endpoint | インターネットを経由せずにAWSサービスと通信 |
| 🔄 | NAT Gateway | プライベートからインターネットへの一方通行の出口 |
🗒️ 7. Obsidian管理メモ
- 見返すタイミング: ネットワークの全体像やアクセスコントロールの違いを学ぶ際
- 関連ノート候補:
AWS_SAA_Security_Group_NACL,AWS_SAA_VPC_Endpoint
8. HTMLファイル名:
AWS_セキュア設計_VPC.html