例: サブネットのインスタンスへのアクセス制御 - Amazon Virtual Private Cloud

例: サブネットのインスタンスへのアクセス制御

この例では、サブネットのインスタンスは相互に通信でき、信頼されたリモートコンピュータからアクセス可能です。リモートコンピュータは、ローカルネットワーク内のコンピュータであるか、別のサブネットまたは VPC 内のインスタンスである可能性があります。これを使用して、インスタンスに接続し、管理タスクを実行します。セキュリティグループルールとネットワーク ACL ルールでは、リモートコンピュータの IP アドレス (172.31.1.2/32) からのアクセスを許可します。インターネットまたは他のネットワークからのその他のトラフィックはすべて拒否されます。このシナリオでは、インスタンスのセキュリティグループまたはセキュリティグループルールを変更し、防衛のバックアップレイヤーとしてネットワーク ACL を持つことができます。

セキュリティグループと NACL の使用

インスタンスに関連付けるセキュリティグループの例を次に示します。セキュリティグループはステートフルです。したがって、インバウンドトラフィックへの応答を許可するルールは必要ありません。

インバウンド
プロトコルのタイプ プロトコル ポート範囲 送信元 コメント
すべてのトラフィック すべて すべて sg-1234567890abcdef0 このセキュリティグループに関連付けられたすべてのインスタンスは相互に通信できます。
SSH TCP 22 172.31.1.2/32 リモートコンピュータからのインバウンド SSH アクセスを許可します。
アウトバウンド
プロトコルタイプ プロトコル ポート範囲 送信先 コメント
すべてのトラフィック すべて すべて sg-1234567890abcdef0 このセキュリティグループに関連付けられたすべてのインスタンスは相互に通信できます。

次に、インスタンスのサブネットに関連付けるネットワーク ACL の例を示します。ネットワーク ACL ルールは、サブネット内のすべてのインスタンスに適用されます。ネットワーク ACL はステートレスです。したがって、インバウンドトラフィックへの応答を許可するルールが必要です。

インバウンド
ルール番号 タイプ プロトコル ポート範囲 送信元 許可/拒否 コメント
100 SSH TCP 22 172.31.1.2/32 許可 リモートコンピュータからのインバウンドトラフィックを許可します。
* すべてのトラフィック すべて すべて 0.0.0.0/0 拒否 他のすべてのインバウンドトラフィックを拒否します。
アウトバウンド
ルール番号 タイプ プロトコル ポート範囲 送信先 許可/拒否 コメント
100 カスタム TCP TCP 1024-65535 172.31.1.2/32 許可 リモートコンピュータに対するアウトバウンド応答を許可します。
* すべてのトラフィック すべて すべて 0.0.0.0/0 拒否 他のすべてのアウトバウンドトラフィックを拒否します。

誤ってセキュリティグループルールを過度に制限の低いものにした場合、この例ではネットワーク ACL ルールは指定した IP アドレスからのアクセスのみを許可し続けます。例えば、次のセキュリティグループには、任意の IP アドレスからのインバウンド SSH アクセスを許可するルールが含まれています。ただし、ネットワーク ACL を使用するサブネット内のインスタンスに、このセキュリティグループを関連付けると、ネットワーク ACL ルールによってサブネットへの他のインバウンドトラフィックが拒否されるため、そのインスタンスにアクセスできるのは、サブネット内およびリモートコンピュータ内の他のインスタンスのみです。

インバウンド
タイプ プロトコル ポート範囲 送信元 コメント
すべてのトラフィック すべて すべて sg-1234567890abcdef0 このセキュリティグループに関連付けられたすべてのインスタンスは相互に通信できます。
SSH TCP 22 0.0.0.0/0 すべての IP アドレスからの SSH アクセスを許可します。
アウトバウンド
タイプ プロトコル ポート範囲 送信先 コメント
すべてのトラフィック すべて すべて 0.0.0.0/0 すべてのアウトバウンドトラフィックを許可します。