ホーム セキュアなソリューション設計

VPCセキュリティ設計 — セキュリティグループ・NACL・多層防御

ステートフル/ステートレスの違い、多層防御設計、NATゲートウェイ配置を解説します。

最終更新: 2026-07-28 カテゴリ: セキュアなソリューション設計

ネットワークレイヤーでのアクセス制御の基本となるのが、セキュリティグループネットワークACL (NACL) です。この2つの違いを正確に理解することが、 VPCセキュリティ設計の土台になります。

SAA レベル:基礎概念

セキュリティグループとNACLの違い

項目セキュリティグループネットワークACL
適用単位インスタンス(ENI)単位サブネット単位
ステートステートフル(戻りの通信は自動許可)ステートレス(戻りの通信も明示的なルールが必要)
ルール許可(Allow)のみ許可・拒否(Deny)の両方が可能
評価順序全ルールを評価し、1つでもマッチすれば許可番号の小さい順に評価し、最初にマッチしたルールを適用

SAA 試験のポイント

セキュリティグループがステートフルであるため、インバウンドで許可した通信への戻り(レスポンス)は、アウトバウンドルールを設定しなくても自動的に許可されます。一方、NACLはステートレスなため、インバウンドを許可する場合、対応するアウトバウンド(一時ポート範囲を含む)も明示的に許可する必要がある、という違いがSAA最頻出の論点です。

プライベートサブネットとNATゲートウェイ

  • パブリックサブネット: インターネットゲートウェイへの経路を持つサブネット
  • プライベートサブネット: インターネットゲートウェイへの直接経路を持たないサブネット
  • プライベートサブネットのリソースが外部への通信(アップデート取得等)をする場合、NATゲートウェイを経由する

SAP レベル:高度な設計シナリオ

多層防御(Defense in Depth)の設計

SAP 試験のポイント

SAPレベルでは、セキュリティグループとNACLをそれぞれ独立した防御層として組み合わせる設計が求められます。「セキュリティグループだけで十分」という判断ではなく、NACLをサブネット単位の大まかなブロックルール(既知の悪意あるIPレンジの拒否等)として活用し、セキュリティグループをインスタンス単位のきめ細かい許可ルールとして使う、という役割分担が典型的な多層防御設計です。

インターネット NACL(サブネットレベル、特定の悪意あるIPを明示的にDeny) セキュリティグループ(インスタンスレベル、必要なポートのみAllow) EC2インスタンス

NATゲートウェイの高可用性配置

SAP 試験のポイント

NATゲートウェイは単一AZのリソースです。1つのNATゲートウェイに複数AZのプライベートサブネットから依存させると、そのAZの障害時に他のAZのリソースまでインターネットアクセスができなくなります。SAPレベルでは、各AZに個別のNATゲートウェイを配置し、各AZのプライベートサブネットは同一AZ内のNATゲートウェイのみを使う設計が高可用性のベストプラクティスとして問われます。

設計可用性コスト
単一NATゲートウェイを全AZで共有低(AZ障害でクロスAZ通信断)低い
各AZに個別のNATゲートウェイAZ数分のコストが発生

設計上の落とし穴

コスト削減のために単一のNATゲートウェイで全プライベートサブネットをカバーする設計は、そのAZが停止した際に、他のAZの正常なリソースまでインターネットアクセスができなくなるという、可用性上の重大なリスクを見落としがちです。本番環境ではAZごとのNATゲートウェイ配置が原則です。

セキュリティグループの参照設計

  • セキュリティグループは、IPアドレスだけでなく他のセキュリティグループをソースとして指定できる
  • 「WebサーバーのセキュリティグループからのみDBサーバーへのアクセスを許可する」という設計は、IPアドレスのハードコードを避け、Auto Scalingでインスタンスが入れ替わっても自動的にルールが機能する、スケーラブルな設計として推奨される

VPCフローログによる可視化

  • VPCフローログを有効化することで、セキュリティグループやNACLでブロック・許可された通信を記録し、意図しない通信パターンの検出や、トラブルシューティングに活用できる

まとめ

  • SAA: セキュリティグループ(ステートフル、インスタンス単位)とNACL(ステートレス、サブネット単位)の違いを理解する。
  • SAP: NACL+セキュリティグループによる多層防御設計、NATゲートウェイのAZごとの高可用性配置、セキュリティグループ参照によるスケーラブルなルール設計ができる。

ここまでで 2-4 セキュアなソリューション設計 の全4記事が完了しました。次は 2-5 コスト効率の高い設計 に進みます。