

# Amazon VPC のインフラストラクチャセキュリティ
<a name="infrastructure-security"></a>

マネージドサービスである Amazon Virtual Private Cloud は、AWS グローバルネットワークセキュリティによって保護されています。AWSセキュリティサービスと AWS がインフラストラクチャを保護する方法については、[AWS クラウドセキュリティ](https://aws.amazon.com/security/) を参照してください。インフラストラクチャセキュリティのベストプラクティスを使用して AWS 環境を設計するには *セキュリティの柱 - AWS 適切なアーキテクチャを備えたフレームワーク* の [インフラストラクチャの保護](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html) を参照してください。

AWS が公開した API 呼び出しを使用して、ネットワーク経由で Amazon VPC にアクセスします。クライアントは次をサポートする必要があります。
+ Transport Layer Security (TLS)。TLS 1.2 が必須で、TLS 1.3 をお勧めします。
+ DHE (楕円ディフィー・ヘルマン鍵共有) や ECDHE (楕円曲線ディフィー・ヘルマン鍵共有) などの完全前方秘匿性 (PFS) による暗号スイート。これらのモードは Java 7 以降など、ほとんどの最新システムでサポートされています。

## ネットワークの隔離
<a name="network-isolation"></a>

仮想プライベートクラウド (VPC) はAWS クラウド内の論理的に隔離された領域にある仮想ネットワークです。ワークロードまたは組織エンティティ単位でインフラストラクチャを隔離するには個別の VPC を使用します。

サブネットはある範囲の IP アドレスが示す VPC 内の領域です。インスタンスを起動する場合にはVPC 内のあるサブネットにおいて起動することになります。サブネットを使用すると、単一の VPC 内で多階層ウェブアプリケーションの各階層 (ウェブサーバー、アプリケーションサーバーおよびデータベースサーバーなど) を隔離できます。インターネットからの直接アクセスを認めるべきでないインスタンスには、プライベートサブネットを使用します。

[AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/) を使用して、VPC 内のリソースが、サービスが VPC で直接ホストされているかのようにプライベート IP アドレスを使用して AWS のサービス に接続することを許可します。したがって、AWS のサービス へのアクセスにインターネットゲートウェイまたは NAT デバイスを使用する必要はありません。

## ネットワークトラフィックの制御
<a name="control-network-traffic"></a>

EC2 インスタンスなど、VPC 内のリソースへのネットワークトラフィックを制御するには、以下のオプションを検討してください。
+ VPC へのネットワークアクセスを制御するための主要なメカニズムとして、[セキュリティグループ](vpc-security-groups.md)を使用します。必要に応じて、[ネットワーク ACL](vpc-network-acls.md) 使用すると、ステートレスできめの粗いネットワーク制御を行うことができます。セキュリティグループは、ステートフルなパケットフィルター処理を実行して、他のセキュリティグループを参照するルールを作成できるため、ネットワーク ACL よりも汎用性があります。ネットワーク ACL は、セカンダリ制御 (特定のトラフィックのサブセットを拒否するなど) または高レベルのサブネットガードレールとして効果的に使用できます。また、ネットワーク ACL はサブネット全体に適用されるため、万が一正しいセキュリティグループがない状態でインスタンスが起動された場合に、深層防御として活用できます。
+ インターネットからの直接アクセスを認めるべきでないインスタンスにはプライベートサブネットを使用します。プライベートサブネット内にあるインスタンスからのインターネットアクセスには、踏み台ホストまたは NAT ゲートウェイを使用します。
+ 接続要件を満たす最小限のネットワークルートでサブネット[ルートテーブル](VPC_Route_Tables.md)を設定します。
+ 追加のセキュリティグループまたはネットワークインターフェイスを使用して、Amazon EC2 インスタンス管理トラフィックを通常のアプリケーショントラフィックとは別に制御および監査することをご検討ください。このアプローチにより、変更管理のための特別な IAM ポリシーを実装できるため、セキュリティグループルールや自動化されたルール検証スクリプトへの変更を容易に監査することができます。複数のネットワークインターフェイスでは、ホストベースのルーティングポリシーを作成したり、サブネットに割り当てられたネットワークインターフェイスに基づいて異なる VPC サブネットルーティングルールを活用したりするなど、ネットワークトラフィックを制御するための追加のオプションも提供されます。
+ AWS Virtual Private Network または Direct Connectを使用して、リモートネットワークから VPC へのプライベート接続を確立します。詳細については、[ネットワークから Amazon VPC への接続オプション](https://docs.aws.amazon.com/whitepapers/latest/aws-vpc-connectivity-options/network-to-amazon-vpc-connectivity-options.html)を参照してください。
+ [VPC フローログ](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html)を使用して、インスタンスに到達するトラフィックを監視します。
+ [AWS Security Hub CSPM](https://aws.amazon.com/security-hub/)を使用して、インスタンスからの意図しないネットワークアクセスを確認する。
+ [AWS Network Firewall](network-firewall.md) を使用して、VPC 内のサブネットを一般的なネットワークの脅威から保護します。

## セキュリティグループとネットワーク ACL を比較する
<a name="VPC_Security_Comparison"></a>

次の表は、セキュリティグループとネットワーク ACL の基本的な違いをまとめたものです。


| 特性 | セキュリティグループ | ネットワーク ACL | 
| --- | --- | --- | 
| オペレーションのレベル | インスタンスレベル | サブネットレベル | 
| スコープ | セキュリティグループに関連付けられているすべてのインスタンスに適用されます | 関連付けられたサブネット内のすべてのインスタンスに適用されます | 
| ルールタイプ | ルールのみを許可します | 許可ルールと拒否ルール | 
| ルールの評価 | トラフィックを許可するかどうかを決める前に、すべてのルールを評価します | トラフィックの一致が見つかるまで昇順でルールを評価します | 
| 返されるトラフィック | 自動許可 (ステートフル) | 明示的に許可する必要があります (ステートレス) | 

次の図は、セキュリティグループおよびネットワーク ACL が提供するセキュリティレイヤーを示しています。たとえば、インターネットゲートウェイからのトラフィックは、ルーティングテーブルのルートを使用して適切なサブネットにルーティングされます。サブネットに対してどのトラフィックが許可されるかは、そのサブネットに関連付けられているネットワーク ACL のルールによってコントロールされます。インスタンスに対してどのトラフィックが許可されるかは、そのインスタンスに関連付けられているセキュリティグループのルールによってコントロールされます。

![\[セキュリティグループおよびネットワーク ACL を使用してトラフィックをコントロール\]](http://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/images/security-comparison.png)


セキュリティグループのみを使用してインスタンスを保護できます。ただし、ネットワーク ACL は追加の防御レイヤーとして追加できます。詳細については、「[例: サブネットのインスタンスへのアクセス制御](nacl-examples.md)」を参照してください。