ネットワーク ACL の基本
ネットワーク ACL について知っておく必要がある基本的な情報を以下に示します。
-
VPC には、変更可能なデフォルトのネットワーク ACL が自動的に設定されます。デフォルトでは、すべてのインバウンドおよびアウトバウンドの IPv4 トラフィックと、IPv6 トラフィック (該当する場合) が許可されます。
-
カスタムネットワーク ACL を作成して、それをサブネットに関連付けることで、サブネットレベルで特定のインバウンドトラフィックまたはアウトバウンドトラフィックを許可または拒否することができます。
-
VPC 内の各サブネットにネットワーク ACL を関連付ける必要があります。ネットワーク ACL に明示的にサブネットを関連付けない場合、サブネットはデフォルトのネットワーク ACL に自動的に関連付けられます。
-
ネットワーク ACL を複数のサブネットに関連付けることができます。ただし、サブネットは一度に 1 つのネットワーク ACL にのみ関連付けることができます。サブネットとネットワーク ACL を関連付けると、以前の関連付けは削除されます。
-
ネットワーク ACL には、インバウンドルールとアウトバウンドルールがあります。各ルールでは、トラフィックを許可または拒否できます。各ルールには 1 から 32,766 までの番号が設定されます。トラフィックを許可するか拒否するかを決定する際は、最も低い番号のルールから順にルールを評価します トラフィックがルールに一致すると、そのルールが適用され、追加のルールは評価されません。まずは増分 (例えば 10 または 100 の増分) でルールを作成することをお勧めします。こうすると、必要になったときに後で新しいルールを挿入できます。
-
ネットワーク ACL ルールは、トラフィックがサブネット内でルーティングされるときではなく、サブネットに出入りするときに評価されます。
-
NACL はステートレスです。つまり、以前に送受信されたトラフィックに関する情報は保存されません。例えば、サブネットへの特定のインバウンドトラフィックを許可する NACL ルールを作成しても、そのトラフィックへの応答は自動的には許可されません。これは、セキュリティグループの仕組みとは対照的です。セキュリティグループはステートフルです。つまり、以前に送受信されたトラフィックに関する情報が保存されます。例えば、セキュリティグループが EC2 インスタンスへのインバウンドトラフィックを許可している場合、アウトバウンドセキュリティグループのルールにかかわらず、レスポンスは自動的に許可されます。
-
ネットワーク ACL では、Route 53 Resolver (VPC+2 IP アドレスまたは AmazonProvidedDNS とも呼ばれます) で送受信される DNS リクエストをブロックすることはできません。Route 53 Resolver 経由の DNS リクエストをフィルターするために、「Amazon Route 53 デベロッパーガイド」にある「Route 53 Resolver DNS Firewall」を有効にすることができます。
-
ネットワーク ACL では、インスタンスメタデータサービス (IMDS) へのトラフィックをブロックすることはできません。IMDS へのアクセスを管理するには、「Amazon EC2 ユーザーガイド」の「インスタンスメタデータオプションの設定」を参照してください。
-
ネットワーク ACL では、以下で送受信されるトラフィックはフィルターされません。
-
Amazon ドメインネームサービス (DNS)
-
Amazon Dynamic Host Configuration Protocol (DHCP)
-
Amazon EC2 インスタンスメタデータ。
-
Amazon ECS タスクメタデータエンドポイント
-
Windows インスタンスのライセンスアクティベーション
-
Amazon Time Sync Service
-
デフォルトの VPC ルーターによる予約済み IP アドレス
-
-
VPC あたりのネットワーク ACL の数とネットワーク ACL あたりのルールの数には、クォータ (制限とも呼ばれます) があります。詳細については、「Amazon VPC クォータ」を参照してください。