さまざまなユースケースのセキュリティグループのルール - Amazon Elastic Compute Cloud

さまざまなユースケースのセキュリティグループのルール

セキュリティグループを作成し、そのセキュリティグループに関連付けられたインスタンスのロールを反映したルールを追加できます。例えば、ウェブサーバーとして構成されているインスタンスには、インバウンドの HTTP および HTTPS アクセスを許可するセキュリティグループルールが必要です。同様に、データベースのインスタンスには、データベースのタイプに対するアクセス (MySQL のポート 3306 でのアクセスなど) を許可するルールが必要です。

以下は、特定の種類のアクセスのセキュリティグループに追加できるルールの種類の例です。

ウェブサーバールール

次のインバウンドルールでは、任意の IP アドレスからの HTTP および HTTPS アクセスを許可します。VPC が IPv6 に対して有効になっている場合、IPv6 アドレスからインバウンド HTTP および HTTPS トラフィックを制御するルールを追加できます。

プロトコルのタイプ プロトコル番号 ポート 送信元 IP コメント
TCP 6 80 (HTTP) 0.0.0.0/0 任意の IPv4 アドレスからのインバウンド HTTP アクセスを許可します
TCP 6 443 (HTTPS) 0.0.0.0/0 任意の IPv4 アドレスからのインバウンド HTTPS アクセスを許可します
TCP 6 80 (HTTP) ::/0 任意の IPv6 アドレスからのインバウンド HTTP アクセスを許可します
TCP 6 443 (HTTPS) ::/0 任意の IPv6 アドレスからのインバウンド HTTPS アクセスを許可します

データベースサーバールール

次のインバウンドルールは、インスタンスで実行中のデータベースのタイプに応じて、データベースアクセス用に追加するルールの例です。Amazon RDS インスタンスの詳細については、Amazon RDS ユーザーガイドを参照してください。

ソース IP には、次のいずれかを指定します。

  • ローカルネットワークの特定の IP アドレスまたは IP アドレス範囲 (CIDR ブロック表記)

  • データベースにアクセスするインスタンスのグループのセキュリティグループ ID

プロトコルのタイプ プロトコル番号 ポート コメント
TCP 6 1433 (MS SQL) Amazon RDS インスタンス上など、Microsoft SQL Server データベースにアクセスするデフォルトのポート
TCP 6 3306 (MYSQL/Aurora) Amazon RDS インスタンス上など、MySQL または Aurora データベースにアクセスするデフォルトのポート
TCP 6 5439 (Redshift) Amazon Redshift クラスターデータベースにアクセスするデフォルトのポート。
TCP 6 5432 (PostgreSQL) Amazon RDS インスタンス上など、PostgreSQL データベースにアクセスするデフォルトのポート
TCP 6 1521 (Oracle) Amazon RDS インスタンス上など、Oracle データベースにアクセスするデフォルトのポート

必要に応じて、データベースサーバーからのアウトバウンドトラフィックを制限できます。例えば、ソフトウェアの更新ではインターネットへのアクセスを許可し、その他のトラフィックはすべて制限することができます。最初に、すべてのアウトバンドトラフィックを許可するデフォルトのアウトバウンドルールを削除する必要があります。

プロトコルのタイプ プロトコル番号 ポート 送信先 IP コメント
TCP 6 80 (HTTP) 0.0.0.0/0 任意の IPv4 アドレスへのアウトバウンド HTTP アクセスを許可します
TCP 6 443 (HTTPS) 0.0.0.0/0 任意の IPv4 アドレスへのアウトバウンド HTTPS アクセスを許可します
TCP 6 80 (HTTP) ::/0 (IPv6 が有効な VPC のみ) 任意の IPv6 アドレスへのアウトバウンド HTTP アクセスを許可します
TCP 6 443 (HTTPS) ::/0 (IPv6 が有効な VPC のみ)、任意の IPv6 アドレスへのアウトバウンド HTTPS アクセスを許可します

コンピュータからのインスタンスへの接続ルール

インスタンスに接続するには、セキュリティグループに SSH アクセス (Linux インスタンスの場合) または RDP アクセス (Windows インスタンスの場合) を許可するインバウンドルールが必要です。

プロトコルのタイプ プロトコル番号 ポート 送信元 IP
TCP 6 22 (SSH) ローカルコンピュータのパブリック IPv4 アドレス、またはローカルネットワークの IP アドレスの範囲。VPC が IPv6 に対して有効で、インスタンスに IPv6 アドレスがある場合、IPv6 アドレスまたは範囲を入力できます。
TCP 6 3389 (RDP) ローカルコンピュータのパブリック IPv4 アドレス、またはローカルネットワークの IP アドレスの範囲。VPC が IPv6 に対して有効で、インスタンスに IPv6 アドレスがある場合、IPv6 アドレスまたは範囲を入力できます。

同じセキュリティグループを持つインスタンスからインスタンスに接続するためのルール

同じセキュリティグループに関連付けられたインスタンスが相互に通信できるようにするには、そのためのルールを明示的に追加する必要があります。

注記

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

次の表は、関連付けられたインスタンスの相互通信を可能にするセキュリティグループのインバウンドルールを示します。このルールでは、すべてのタイプのトラフィックが許可されます。

プロトコルのタイプ プロトコル番号 ポート 送信元 IP
-1 (すべて) -1 (すべて) -1 (すべて) セキュリティグループの ID、または他のインスタンスを含むサブネットの CIDR 範囲 (注を参照)。

Ping/ICMP のルール

ping コマンドは、ICMP トラフィックの一種です。インスタンスに ping を実行するには、次のインバウンド ICMP ルールを追加する必要があります。

プロトコルのタイプ プロトコル番号 ICMP タイプ ICMP コード 送信元 IP
ICMP 1 8 (Echo Rクエスト) 該当なし ローカルコンピュータのパブリック IPv4 アドレス、またはローカルネットワークの IPv4 アドレスの範囲

ping6 コマンドを使用してインスタンスの IPv6 アドレスに ping を実行するには、次のインバウンド ICMPv6 ルールを追加する必要があります。

プロトコルのタイプ プロトコル番号 ICMP タイプ ICMP コード 送信元 IP
ICMPv6 58 128 (Echo Rクエスト 0 コンピュータの IPv6 アドレス、またはローカルネットワークの IPv6 アドレスの範囲

DNS サーバールール

DNS サーバーとして EC2 インスタンスをセットアップした場合、TCP および UDP のトラフィックがポート 53 経由で DNS サーバーに到達できるようにする必要があります。

ソース IP には、次のいずれかを指定します。

  • ネットワークの IP アドレスまたは IP アドレス範囲 (CIDR ブロック表記)

  • ネットワークで、DNS サーバーにアクセスする必要がある一連のインスタンスのセキュリティグループの ID

プロトコルのタイプ プロトコル番号 ポート
TCP 6 53
UDP 17 53

Amazon EFS ルール

Amazon EC2 インスタンスで Amazon EFS ファイルシステムを使用している場合、Amazon EFS マウントターゲットに関連付けるセキュリティグループは、NFS プロトコル経由のトラフィックを許可する必要があります。

プロトコルのタイプ プロトコル番号 ポート 送信元 IP コメント
TCP 6 2049 (NFS) セキュリティグループの ID このセキュリティグループに関連付けられたリソース (マウントターゲットを含む) からのインバウンド NFS アクセスを許可します。

Amazon EC2 インスタンスに Amazon EFS ファイルシステムをマウントするには、インスタンスに接続する必要があります。したがって、インスタンスに関連付けられているセキュリティグループには、ローカルコンピュータまたはローカルネットワークからのインバウンド SSH を許可するルールが必要です。

プロトコルのタイプ プロトコル番号 ポート 送信元 IP コメント
TCP 6 22 (SSH) ローカルコンピュータの IP アドレス範囲、またはネットワークの IP アドレス範囲 (CIDR ブロック表記)。 ローカルコンピュータからのインバウンド SSH アクセスを許可します。

Elastic Load Balancing ルール

ロードバランサーを使用している場合、ロードバランサーに関連付けられたセキュリティグループには、インスタンスやターゲットとの通信を許可するルールが必要です。

インバウンド
プロトコルのタイプ プロトコル番号 ポート 送信元 IP コメント
TCP 6 The listener port

インターネット向けロードバランサーの場合: 0.0.0.0/0 (すべての IPv4 アドレス)

内部ロードバランサーの場合: VPC の IPv4 CIDR ブロック

Allow inbound traffic on the load balancer listener port.
アウトバウンド
プロトコルのタイプ プロトコル番号 ポート 送信先 IP コメント
TCP 6 The instance listener port The ID of the instance security group Allow outbound traffic to instances on the instance listener port.
TCP 6 The health check port The ID of the instance security group Allow outbound traffic to instances on the health check port.

インスタンスのセキュリティグループルールは、リスナーポートとヘルスチェックポートの両方でインスタンスと通信することをロードバランサーに許可する必要があります。

インバウンド
プロトコルのタイプ プロトコル番号 ポート 送信元 IP コメント
TCP 6 The instance listener port

ロードバランサーのセキュリティグループの ID

Allow traffic from the load balancer on the instance listener port.
TCP 6 The health check port The ID of the load balancer security group Allow traffic from the load balancer on the health check port.

詳細については、「Classic Load Balancer 用ユーザーガイド」の「Classic Load Balancer のセキュリティグループの設定」または「Application Load Balancer 用ユーザーガイド」の「Application Load Balancer のセキュリティグループ」を参照してください。

VPC ピア接続ルール

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