VPC のセキュリティー
セキュリティー・グループ、ネットワーク・アクセス制御リスト (ACL)、またはこの両方のタイプの制御を使用してネットワーク・トラフィックの制御を行うことで、IBM Cloud® Virtual Private Cloud とワークロードを保護できます。
セキュリティーの概要
セキュリティー・グループおよびアクセス制御リスト (ACL) により、指定したルールに基づいて IBM Cloud® Virtual Private Cloud 内のサブネット間およびインスタンス間のトラフィックを制御できます。 セキュリティー・グループと ACL を使用すると、サブネットとインスタンスのセキュリティーが強化されます。
- サブネットとの間のトラフィックは、アクセス制御リスト (ACL) で制御できます。
- セキュリティー・グループでは、仮想サーバー・インスタンスのレベルでトラフィックを制御できます。
- サブネットからインターネットにアクセスするためのパブリック・ゲートウェイを、ACL で保護してセットアップできます。
- 仮想サーバー・インスタンスからインターネットにアクセスするための浮動 IP を、SG で保護して実装できます。
IBM Cloud Internet Services(CIS) を使用して VPC を構成する場合は、VPC で CIS (許可リスト) を介してのみトラフィックを許可することにより、 DDoS 攻撃を防止できます。 Network ACL およびセキュリティー・グループを、 CIS トラフィックを許可リストに登録するように設定します。
定義
以下のセクションでは、ACL およびセキュリティー・グループの基本機能と、VPC でエンドツーエンド暗号化をサポートする方法について説明します。
アクセス制御リスト
アクセス制御リスト (ACL) は、サブネットのインバウンドとアウトバウンドのトラフィックを管理 (つまり許可または拒否) できます。 ACL はステートレスです。つまり、インバウンド・ルールおよびアウトバウンド・ルールは、別個に明示的に指定する必要があります。 各 ACL は、送信元 IP、送信元ポート、宛先 IP、宛先ポート、およびプロトコルに基づいたルールで構成されます。
どの VPC にも、すべてのインバウンド・トラフィックおよびアウトバウンド・トラフィックを許可するデフォルトの ACL があります。 デフォルトの ACL ルールを編集したり、カスタム ACL を作成したりして、サブネットに付加することができます。 サブネットには常に 1 つの ACL だけを付加できますが、1 つの ACL を複数のサブネットに付加することはできます。 ACL の使用方法について詳しくは、ネットワーク ACL のセットアップを参照してください。
セキュリティー・グループ
セキュリティー・グループは、1 つ以上の仮想サーバー・インスタンスのトラフィックを制御する仮想ファイアウォールとして機能します。 セキュリティー・グループは、関連付けられているインスタンスのトラフィックを許可/拒否することを指定したルールの集合です。1 つのインスタンスに 1 つ以上のセキュリティー・グループを関連付けることができます。また、セキュリティー・グループのルールは編集できます。 詳しくは、セキュリティー・グループの使用を参照してください。
セキュリティー・グループとアクセス制御リストの比較
表 1 に、セキュリティー・グループと ACL の主な相違点をまとめます。
セキュリティー・グループ | ACL | |
---|---|---|
制御レベル | 仮想サーバー・インスタンス | サブネット |
状態 | ステートフル - インバウンド接続が許可されると応答が許可される | ステートレス - インバウンド接続とアウトバウンド接続の両方が明示的に許可される必要がある |
サポートされているルール | 許可ルールのみ使用 | 許可ルールと拒否ルールを使用 |
ルールの適用方法 | すべてのルールが評価される | ルールが順番に処理される |
関連リソースとの関係 | 1 つのインスタンスに複数のセキュリティー・グループを関連付けることができる | 複数のサブネットに同一の ACL を関連付けることができる |
エンドツーエンドの暗号化
IBM Cloud VPC はエンドツーエンドの暗号化を提供しませんが、許可はします。 例えば、仮想サーバー・インスタンスにセキュア・エンドポイント (ポート 443 での HTTPS サーバーなど) がある場合、そのインスタンスに浮動 IP を付加することが可能で、ポート 443 でクライアントからサーバーの接続がエンドツーエンドで暗号化されます。 このパス内には復号を強制するものはありません。 ただし、セキュアでないプロトコル (ポート 80 の HTTP など) を使用する場合は、エンドツーエンドのデータ暗号化は行われません。
アプリケーションでエンドツーエンドの暗号化が必要な場合は、お客様が、エンドツーエンドで接続が暗号化されるようにする必要があります。