セキュリティグループの更新とピアセキュリティグループの参照 - Amazon Virtual Private Cloud

セキュリティグループの更新とピアセキュリティグループの参照

VPC セキュリティグループのインバウンドルールまたはアウトバウンドルールを更新して、ピアリング接続 VPC のセキュリティグループを参照できます。これにより、トラフィックはピア VPC の参照されるセキュリティグループに関連付けられたインスタンスに出入りできます。

要件
  • ピア VPC はアカウントの VPC とするか、別の AWS アカウントの VPC とすることができます。別の AWS アカウントのセキュリティグループを参照するには、[Source] (送信元) または [Destination] (送信先) フィールドにアカウント番号 (123456789012/sg-1a2b3c4d など) を含めます。

  • 別のリージョンにあるピア VPC のセキュリティグループは参照できません。代わりに、ピア VPC の CIDR ブロックを使用します。

  • ピア VPC でセキュリティグループを参照するには、VPC ピアリング接続の状態が active である必要があります。

  • ミドルボックスアプライアンスを介して異なるサブネット内の 2 つのインスタンス間のトラフィックを転送するようにルートを設定するには、両方のインスタンスのセキュリティグループでインスタンス間のトラフィックがフローできるようにする必要があります。各インスタンスのセキュリティグループは、他のインスタンスのプライベート IP アドレス、または他のインスタンスを含むサブネットの CIDR 範囲を送信元として参照する必要があります。他のインスタンスのセキュリティグループを送信元として参照する場合、インスタンス間のトラフィックは許可されません。

コンソールを使用してセキュリティグループルールを更新するには
  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. ナビゲーションペインで [セキュリティグループ] をクリックします。

  3. セキュリティグループを選択し、インバウンドのルールを変更する場合は [アクション][インバウンドのルールを編集] を、アウトバウンドのルールを変更する場合は [アクション][アウトバウンドのルールを編集] を選択します。

  4. ルールを追加するには、[ルールの追加] を選択し、タイプ、プロトコル、ポート範囲を指定します。[送信元] (インバウンドのルールの場合) または [送信先] (アウトバウンドのルールの場合) に、ピア VPC が同じリージョンにある場合は ピア VPC のセキュリティグループの ID を、別のリージョンにある場合はピア VPC の CIDR ブロックを入力します。

    注記

    ピア VPC のセキュリティグループは自動的に表示されません。

  5. 既存のルールを編集するには、値 (ソースや説明など) を変更します。

  6. ルールを削除するには、ルールの隣にある [削除] を選択します。

  7. [Save Rules] (ルールの保存) を選択します。

コマンドラインを使用してインバウンドルールを更新するには
コマンドラインを使用してアウトバウンドルールを更新するには

例えば、セキュリティグループ sg-aaaa1111 を更新して、ピア VPC にある sg-bbbb2222 から HTTP を介したインバウンドアクセスを許可するには、次の AWS CLI コマンドを使用できます。

aws ec2 authorize-security-group-ingress --group-id sg-aaaa1111 --protocol tcp --port 80 --source-group sg-bbbb2222

セキュリティグループルールを更新したら、describe-security-groups コマンドを使って、セキュリティグループルールで参照されるセキュリティグループを確認します。

参照されるセキュリティグループを特定する

セキュリティグループがピア VPC のセキュリティグループのルールで参照されているかどうかを確認するには、アカウントの 1 つ以上のセキュリティグループに対して、次のいずれかのコマンドを使用します。

次の例では、応答はセキュリティグループ sg-bbbb2222 が VPC のセキュリティグループ vpc-aaaaaaaa で参照されていることを示します。

aws ec2 describe-security-group-references --group-id sg-bbbb2222
{ "SecurityGroupsReferenceSet": [ { "ReferencingVpcId": "vpc-aaaaaaaa", "GroupId": "sg-bbbb2222", "VpcPeeringConnectionId": "pcx-b04deed9" } ] }

VPC ピアリング接続が削除されたか、またはピア VPC の所有者が、参照されたセキュリティグループを削除した場合、セキュリティグループルールは古くなります。

古いセキュリティグループルールを操作する

古いセキュリティグループルールとは、同じ VPC またはピア VPC 内の削除されたセキュリティグループを参照するルール、または VPC ピアリング接続が削除されたピア VPC のセキュリティグループを参照するルールのことです。セキュリティグループルールは古くなっても、セキュリティグループから自動的に削除されません。手動で削除する必要があります。VPC ピア接続が削除されたためにセキュリティグループルールが古くなった場合、同じ VPC で新しい VPC ピア接続を作成すると、そのルールは古くなったとマークされなくなります。

Amazon VPC コンソールを使用して、VPC の古くなったセキュリティグループルールを表示および削除できます。

古くなったセキュリティグループルールを表示および削除するには
  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. ナビゲーションペインで、[Security Groups] (セキュリティグループ) を選択します。

  3. [Action] (アクション)、[Manage stale rules] (古いルールの管理) の順に選択します。

  4. VPC で古いルールを持つ VPC を選択します。

  5. [Edit] を選択します。

  6. 削除するルールの横にある [Delete] (削除) ボタンを選択します。[変更のプレビュー]、[ルールの保存] を選択します。

コマンドラインまたは API を使用して古いセキュリティグループルールを記述するには

次の例では、VPC A (vpc-aaaaaaaa) および VPC B がピア接続され、VPC ピア接続は削除されています。VPC A のセキュリティグループ sg-aaaa1111 は VPC B の sg-bbbb2222 を参照します。VPC に対して describe-stale-security-groups コマンドを実行すると、応答では、セキュリティグループ sg-aaaa1111 に、sg-bbbb2222 を参照する古くなった SSH ルールがあることが示されます。

aws ec2 describe-stale-security-groups --vpc-id vpc-aaaaaaaa
{ "StaleSecurityGroupSet": [ { "VpcId": "vpc-aaaaaaaa", "StaleIpPermissionsEgress": [], "GroupName": "Access1", "StaleIpPermissions": [ { "ToPort": 22, "FromPort": 22, "UserIdGroupPairs": [ { "VpcId": "vpc-bbbbbbbb", "PeeringStatus": "deleted", "UserId": "123456789101", "GroupName": "Prod1", "VpcPeeringConnectionId": "pcx-b04deed9", "GroupId": "sg-bbbb2222" } ], "IpProtocol": "tcp" } ], "GroupId": "sg-aaaa1111", "Description": "Reference remote SG" } ] }

古くなったセキュリティグループルールを特定した後、revoke-security-group-ingress コマンドまたは revoke-security-group-egress コマンドを使用してそれらのルールを削除できます。