セキュリティグループの操作
インスタンスを起動する際に、インスタンスにセキュリティグループを割り当てることができます。ルールを追加または削除すると、それらの変更は、そのセキュリティグループを割り当てたすべてのインスタンスに自動的に適用されます。詳細については、「インスタンスへのセキュリティグループの割り当て」を参照してください。
インスタンスを起動した後、そのセキュリティグループを変更することができます。詳細については、「インスタンスのセキュリティグループの変更」を参照してください。
Amazon EC2 コンソールおよびコマンドラインツールを使用して、セキュリティグループとセキュリティグループルールを作成、表示、更新、削除できます。
タスク
セキュリティグループの作成
インスタンスのデフォルトのセキュリティグループを使用できますが、独自のグループを作成し、システムにおけるインスタンスの様々な役割を反映させたい場合があります。
デフォルトでは、新しいセキュリティグループには、すべてのトラフィックがインスタンスを出ることを許可するアウトバウンドルールのみが設定されています。任意のインバウンドトラフィックを許可するには、またはアウトバウンドトラフィックを制限するには、ルールを追加する必要があります。
セキュリティグループは、それが対象としている VPC 内でのみ使用が可能です。
- New console
-
セキュリティグループを作成するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
[セキュリティグループの作成] を選択します。
-
[Basic details (基本情報)] セクションで、次の操作を行います。
-
セキュリティグループの分かりやすい名前と簡単な説明を入力します。セキュリティグループの作成後は編集できません。名前と説明は最大 255 文字とすることができます。使用できる文字は、a-z、A-Z、0-9、スペース、および ._-:/()#,@[]+=&;{}!$* です。
-
[VPC] で、VPC を選択します。
-
-
セキュリティグループルールはここで追加することも、後で追加することもできます。詳細については、「セキュリティグループへのルールの追加」を参照してください。
-
タグはここで追加することも、後で追加することもできます。タグを追加するには、[新しいタグを追加] をクリックし、タグのキーと値を入力します。
-
[セキュリティグループの作成] を選択します。
- Old console
-
セキュリティグループを作成するには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
[Create Security Group] (セキュリティグループの作成) を選択します。
-
セキュリティグループの名前と説明を指定します。
-
[VPC] で使用する VPC の ID を選択します。
-
ルールの追加を開始するか、[Create] を選択して、セキュリティグループを作成できます (ルールは後で追加できます)。ルールの追加の詳細については、「セキュリティグループへのルールの追加」を参照してください。
-
- Command line
-
セキュリティグループを作成するには
以下のいずれかのコマンドを使用します。
-
create-security-group (AWS CLI)
-
New-EC2SecurityGroup (AWS Tools for Windows PowerShell)
-
セキュリティグループのコピー
既存のセキュリティグループのコピーを作成して、新しいセキュリティグループを作成することができます。セキュリティグループをコピーすると、元のセキュリティグループと同じインバウンドルールとアウトバウンドルールでコピーが作成されます。元のセキュリティグループが VPC にある場合、別の VPC を指定しない限り、コピーは同じ VPC に作成されます。
コピーには新しい一意のセキュリティグループ ID が割り当てられ、名前を指定する必要があります。また、説明を追加することもできます。
セキュリティグループは、あるリージョンから別のリージョンにコピーできません。
セキュリティグループのコピーは、次のいずれかの方法で作成できます。
- New console
-
セキュリティグループをコピーするには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
コピーするセキュリティグループを選択し、[アクション]、[Copy to new security group (新しいセキュリティグループにコピー)] の順に選択します。
-
名前と任意で説明を指定し、必要に応じて VPC とセキュリティグループルールを変更します。
-
[作成] を選択します。
-
- Old console
-
セキュリティグループをコピーするには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
コピーするセキュリティグループを選択します。[Actions] を選択し、[Copy to new] を選択します。
-
[Create Security Group] ダイアログが開き、既存のセキュリティグループのルールが自動入力されます。新しいセキュリティグループの名前と説明を指定します。[VPC] で使用する VPC の ID を選択します。終了したら、[Create ] を選択します。
-
セキュリティグループの表示
セキュリティグループに関する情報は、次のいずれかの方法で表示できます。
- New console
-
セキュリティグループを表示するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
セキュリティグループが一覧表示されます。インバウンドルールやアウトバウンドルールなど、特定のセキュリティグループの詳細を表示するには、[セキュリティグループ ID] 列でその ID を選択します。
- Old console
-
セキュリティグループを表示するには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
(オプション) フィルターリストから [VPC ID] を選択して、VPC の ID をリストから選択します。
-
セキュリティグループを選択します。[Description] (説明) タブには一般情報、[Inbound] (インバウンド) タブにはインバウンドルール、[Outbound] (アウトバウンド) タブにはアウトバウンドルール、[Tags] (タグ) タブにはタグが表示されます。
-
- Command line
-
セキュリティグループを表示するには
以下のいずれかのコマンドを使用します。
-
describe-security-groups (AWS CLI)
-
describe-security-group-rules (AWS CLI)
-
Get-EC2SecurityGroup (AWS Tools for Windows PowerShell)
-
- Amazon EC2 Global View
-
Amazon EC2 グローバルビューを使用して、AWSアカウントが有効になっているすべてのリージョンにわたってセキュリティグループを表示できます。詳細については、「Amazon EC2 Global View を使用して、リージョン間のリソースを一覧表示およびフィルターをかけます」を参照してください。
セキュリティグループへのルールの追加
ルールをセキュリティグループに追加すると、セキュリティグループに関連付けられているすべてのインスタンスに新しいルールが自動的に適用されます。ルールの適用には、少し時間がかかる場合があります。詳細については、「さまざまなユースケースのセキュリティグループのルール」および「セキュリティグループのルール」を参照してください。
- New console
-
セキュリティグループにインバウンドルールを追加するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
セキュリティグループを選択し、[アクション]、[インバウンドのルールの編集] の順にクリックします。
-
各ルールについて [ルールを追加] を選択し、次の操作を行います。
-
[タイプ] で、許可するプロトコルのタイプを選択します。
-
カスタムTCP または UDP の場合は、許可するポート範囲を入力する必要があります。
-
カスタムの ICMP の場合は、[プロトコル] から ICMP タイプ名を選択し、該当するものがある場合は [ポート範囲] からコード名を選択します。たとえば、pingコマンドを許可する場合は[プロトコル]から、[Echoリクエスト]を選択します。
-
その他のタイプについては、プロトコルとポート範囲は自動的に設定されます。
-
-
[送信元] で、次のいずれかの操作を行いトラフィックを許可します。
-
[カスタム] を選択し、IP アドレス (CIDR 表記)、CIDR ブロック、別のセキュリティグループ、あるいはプレフィクスリストを入力します。
-
指定したプロトコルのすべてのトラフィックがインスタンスに到達することを許可するには、[任意の場所] を選択します。このオプションでは、送信元として IPv4 の CIDR ブロック 0.0.0.0/0 が自動的に追加されます。セキュリティグループが、IPv6 が有効な VPC 内にある場合、このオプションでは ::/0 IPv6 CIDR ブロックのためのルールが自動的に追加されます。
警告 [Anywhere] (どこでも) を選択した場合は、すべての IPv4 および IPv6 アドレスが、指定されたプロトコルでインスタンスにアクセスできるようにします。ポート 22 (SSH) または 3389 (RDP) のルールを追加する場合は、特定の IP アドレスまたはアドレスの範囲のみにインスタンスへのアクセスを許可する必要があります。
-
ローカルコンピュータのパブリック IPv4 アドレスからのインバウンドトラフィックのみを許可するには、[My IP] (マイ IP) を選択します。
-
-
[説明] では、任意でルールの簡単な説明を指定できます。
-
-
[変更のプレビュー]、[ルールの保存] を選択します。
セキュリティグループにアウトバウンドルールを追加するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
セキュリティグループを選択し、[アクション]、[アウトバウンドルールを編集] の順にクリックします。
-
各ルールについて [ルールを追加] を選択し、次の操作を行います。
-
[タイプ] で、許可するプロトコルのタイプを選択します。
-
カスタムTCP または UDP の場合は、許可するポート範囲を入力する必要があります。
-
カスタムの ICMP の場合は、[プロトコル] から ICMP タイプを選択し、該当するものがある場合は [ポート範囲] からコードを選択します。
-
その他のタイプについては、プロトコルとポート範囲は自動的に設定されます。
-
-
[送信先] で、次のいずれかの操作を行います。
-
[カスタム] をクリックし、アウトバウンドトラフィックを許可する IP アドレス (CIDR 表記)、CIDR ブロック、別のセキュリティグループ、プレフィクスリストのいずれかを入力します。
-
すべての IP アドレスへのアウトバウンドトラフィックを許可するには、[任意の場所] を選択します。このオプションでは、送信先として、0.0.0.0/0 IPv4 CIDR ブロックが自動的に追加されます。
セキュリティグループが、IPv6 が有効な VPC 内にある場合、このオプションでは ::/0 IPv6 CIDR ブロックのためのルールが自動的に追加されます。
-
ローカルコンピュータのパブリック IPv4 アドレスへのアウトバウンドトラフィックのみを許可するには、[My IP] (マイ IP) を選択します。
-
-
(オプション) [説明] に、ルールの簡単な説明を入力します。
-
-
[変更のプレビュー]、[確認] の順に選択します。
- Old console
-
セキュリティグループにルールを追加するには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで [Security Groups] を選択してセキュリティグループを選びます。
-
[インバウンド] タブで、[編集] を選択します。
-
ダイアログで、[Add Rule] を選択し、以下の作業を行います。
-
[Type] で、プロトコルを選択します。
-
カスタム TCP または UDP プロトコルを選択した場合は、[Port Range] でポートの範囲を指定します。
-
カスタム ICMP プロトコルを選択する場合は、[Protocol] から ICMP タイプ名を選択し、該当する場合は、[Port Range] からコード名を選択します。たとえば、pingコマンドを許可する場合は、プロトコルから[Echo Rリクエスト}を選択します。
-
[Source] で、以下のいずれかのオプションを選択します。
-
[Custom]: 表示されているフィールドで、CIDR 表記の IP アドレス、CIDR ブロック、または他のセキュリティグループを指定する必要があります。
-
指定したプロトコルのすべてのトラフィックがインスタンスに到達することを許可するには、[任意の場所] を選択します。このオプションでは、送信元として IPv4 の CIDR ブロック 0.0.0.0/0 が自動的に追加されます。セキュリティグループが、IPv6 が有効な VPC 内にある場合、このオプションでは ::/0 IPv6 CIDR ブロックのためのルールが自動的に追加されます。
警告 [Anywhere] (どこでも) を選択した場合は、すべての IPv4 および IPv6 アドレスが、指定されたプロトコルを使用してインスタンスにアクセスできるようにします。ポート 22 (SSH) または 3389 (RDP) にルールを追加する場合は、特定の IP アドレスないしアドレス範囲のみに権限を与え、インスタンスにアクセスできるようにします。
-
[My IP] (マイ IP): ローカルコンピュータのパブリック IPv4 アドレスを自動的に追加します。
-
-
説明では、オプションでこのルールの説明を指定できます。
追加できるルールのタイプの詳細については、「さまざまなユースケースのセキュリティグループのルール」を参照してください。
-
-
[Save] を選択します。
-
アウトバウンドルールも指定できます。[Outbound] タブで [Edit]、[Add Rule] を選択し、以下の操作を実行します。
-
[Type] で、プロトコルを選択します。
-
カスタム TCP または UDP プロトコルを選択した場合は、[Port Range] でポートの範囲を指定します。
-
カスタム ICMP プロトコルを選択する場合は、[Protocol] から ICMP タイプ名を選択し、該当する場合は、[Port Range] からコード名を選択します。
-
[Destination] で、以下のいずれかのオプションを選択します。
-
[Custom]: 表示されているフィールドで、CIDR 表記の IP アドレス、CIDR ブロック、または他のセキュリティグループを指定する必要があります。
-
[Anywhere]: 自動的に 0.0.0.0/0 IPv4 CIDR ブロックを追加します。このオプションでは、すべての IP アドレスへのアウトバウンドトラフィックが有効になります。
セキュリティグループが、IPv6 に対して有効な VPC にある場合、[任意の場所] オプションによって 2 つのルールが作成されます。1 つは IPv4 トラフィック (0.0.0.0/0) 用、もう 1 つは IPv6 トラフィック (::/0) 用です。
-
[My IP] (マイ IP): ローカルコンピュータの IP アドレスを自動的に追加します。
-
-
説明では、オプションでこのルールの説明を指定できます。
-
-
[Save] を選択します。
-
- Command line
セキュリティグループにルールを追加するには
以下のいずれかのコマンドを使用します。
-
authorize-security-group-ingress (AWS CLI)
-
Grant-EC2SecurityGroupIngress (AWS Tools for Windows PowerShell)
セキュリティグループに 1 つ以上の Egress ルールを追加するには
以下のいずれかのコマンドを使用します。
-
authorize-security-group-egress (AWS CLI)
-
Grant-EC2SecurityGroupEgress (AWS Tools for Windows PowerShell)
-
セキュリティグループルールの更新
セキュリティグループルールの更新は、次のいずれかの方法で行うことができます。更新されたルールは、セキュリティグループに関連付けられているすべてのインスタンスに自動的に適用されます。
- New console
-
コンソールを使用して既存のセキュリティグループルールのプロトコル、ポート範囲、または送信元または送信先を変更すると、コンソールは既存のルールを削除し、新しいルールを追加します。
セキュリティグループルールを更新するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
セキュリティグループを選択します。
-
[Actions] (アクション)、[Edit inbound rules] (インバウンドルールを編集) の順にクリックして、インバウンドトラフィックのルールを更新するか、[Actions] (アクション)、[Edit outbound rules] (アウトバウンドルールを編集) の順にクリックして、アウトバウンドトラフィックのルールを更新します。
-
必要に応じてルールを更新します。
-
[変更のプレビュー]、[確認] の順に選択します。
セキュリティグループルールにタグ付けするには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
セキュリティグループを選択します。
-
[インバウンドルール] または [アウトバウンドルール] タブで、対象となるルールのチェックボックスを選択してから、[タグを管理] をクリックします。
-
[タグの管理] ページには、ルールに割り当てられているすべてのタグが表示されます。タグを追加するには、[タグの追加] を選択し、タグのキーと値を入力します。タグを削除するには、削除するタグの横にある [Remove] を選択します。
-
[Save changes] を選択します。
- Old console
-
コンソールを使用して既存のセキュリティグループルールのプロトコル、ポート範囲、または送信元または送信先を変更すると、コンソールは既存のルールを削除し、新しいルールを追加します。
セキュリティグループルールを更新するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
更新するセキュリティグループを選択し、[インバウンド] タブを選択してインバウンドトラフィックのルールを更新するか、[アウトバウンド] タブを選択してアウトバウンドトラフィックのルールを更新します。
-
[Edit] を選択します。
-
必要に応じてルールエントリを変更して、[保存] を選択します。
- Command line
-
Amazon EC2 API またはコマンドラインツールを使用して、既存のルールのプロトコル、ポート範囲、送信元または送信先を変更することはできません。代わりに、既存のルールを削除して新しいルールを追加する必要があります。ただし、既存のルールの説明を更新することはできます。
既存のインバウンドルールの説明を更新するには
以下のいずれかのコマンドを使用します。
-
Update-EC2SecurityGroupRuleIngressDescription (AWS Tools for Windows PowerShell)
既存のアウトバウンドルールの説明を更新するには
以下のいずれかのコマンドを使用します。
-
Update-EC2SecurityGroupRuleEgressDescription (AWS Tools for Windows PowerShell)
セキュリティグループルールにタグ付けするには
以下のいずれかのコマンドを使用します。
-
create-tags (AWS CLI)
-
New-EC2Tag (AWS Tools for Windows PowerShell)
セキュリティグループからのルールの削除
セキュリティグループからルールを削除すると、その変更内容が自動的にセキュリティグループに関連付けられているインスタンスに適用されます。
セキュリティグループからのルールの削除は、次のいずれかの方法で行うことができます。
- New console
-
セキュリティグループルールを削除するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
更新するセキュリティグループを選択し、[アクション] を選択してから、[インバウンドのルールの編集] を選択してインバウンドルールを削除するか、[アウトバウンドのルールの編集] を選択してアウトバウンドルールを削除します。
-
削除するルールの右にある [削除] ボタンを選択します。
-
[変更のプレビュー]、[確認] の順に選択します。
- Old console
-
セキュリティグループルールを削除するには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
セキュリティグループを選択します。
-
[Inbound] タブ (インバウンドルールの場合) または [Outbound] タブ (アウトバウンドルールの場合) で、[Edit] を選択します。各ルールの横にある [Delete] (クロスアイコン) を選択します。
-
[Save] を選択します。
-
- Command line
-
セキュリティグループから 1 つ以上の Ingress ルールを削除するには
以下のいずれかのコマンドを使用します。
-
revoke-security-group-ingress (AWS CLI)
-
Revoke-EC2SecurityGroupIngress (AWS Tools for Windows PowerShell)
セキュリティグループから 1 つ以上の Egress ルールを削除するには
以下のいずれかのコマンドを使用します。
-
revoke-security-group-egress (AWS CLI)
-
Revoke-EC2SecurityGroupEgress (AWS Tools for Windows PowerShell)
-
セキュリティグループを削除する
インスタンスに関連付けられているセキュリティグループを削除することはできません。デフォルトセキュリティグループを削除することはできません。同じ VPC の他のセキュリティグループのルールによって参照されているセキュリティグループは削除できません。セキュリティグループが独自のいずれかのルールで参照されている場合は、セキュリティグループを削除する前に、まずルールを削除する必要があります。
- New console
-
セキュリティグループを削除するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
削除するセキュリティグループを選択し、[アクション]、[セキュリティグループの削除]、[削除] の順に選択します。
- Old console
-
セキュリティグループを削除するには
-
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[Security Groups] を選択します。
-
セキュリティグループを選択して、[Actions]、[Delete Security Group] を選択します。
-
[Yes, Delete] を選択します。
-
- Command line
-
セキュリティグループを削除するには
以下のいずれかのコマンドを使用します。
-
delete-security-group (AWS CLI)
-
Remove-EC2SecurityGroup (AWS Tools for Windows PowerShell)
-
インスタンスへのセキュリティグループの割り当て
インスタンスを起動する際に、インスタンスに 1 つ以上のセキュリティグループを割り当てることができます。起動テンプレートでは、1 つ以上のセキュリティグループを指定することもできます。セキュリティグループは、起動テンプレートを使用して起動されるすべてのインスタンスに割り当てられます。
-
インスタンスを起動する際に、インスタンスにセキュリティグループを割り当てるには、「ステップ 6: セキュリティグループを設定する」を参照してください。
-
起動テンプレートでセキュリティグループを指定するには、定義したパラメータを使用した新しい起動テンプレートの作成 のステップ 6 を参照してください。
インスタンスのセキュリティグループの変更
インスタンスを起動した後、セキュリティグループを追加または削除することで、セキュリティグループを変更できます。インスタンスの状態が running
または stopped
になったら、セキュリティグループを変更できます。
- New console
-
コンソールを使用してインスタンスのセキュリティグループを変更するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[インスタンス] を選択します。
-
インスタンスを選択し、[アクション]、[セキュリティ]、[セキュリティグループの変更] の順に選択します。
-
[関連付けられたセキュリティグループ] で、リストからセキュリティグループを選択し、[セキュリティグループを追加] を選択します。
すでに関連付けられているセキュリティグループを削除するには、そのセキュリティグループで [削除] を選択します。
-
[Save] を選択します。
- Old console
-
コンソールを使用してインスタンスのセキュリティグループを変更するには
Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/
) を開きます。 -
ナビゲーションペインで、[インスタンス] を選択します。
-
インスタンスを選択し、[アクション]、[ネットワーク]、[セキュリティグループの変更] の順に選択します。
-
1 つまたは複数のセキュリティグループを追加するには、そのチェックボックスをオンにします。
既に関連付けられているセキュリティグループを削除するには、そのチェックボックスをオフにします。
-
[Assign Security Groups] を選択します。
- Command line
-
コマンドラインを使用してインスタンスのセキュリティグループを変更するには
以下のいずれかのコマンドを使用します。
-
modify-instance-attribute (AWS CLI)
-
Edit-EC2InstanceAttribute (AWS Tools for Windows PowerShell)
-