ファイアウォール ルールを作成して管理する

コンシューマーのネットワーク トラフィックを検査するには、ファイアウォール ポリシーを使用して、トラフィックを VPC のインターセプト エンドポイント グループにリダイレクトします。その後、トラフィックはプロデューサーのインターセプト デプロイ グループを経由して、コンピューティング リソースに到達します。

このページでは、グローバル ネットワーク ファイアウォール ポリシーとルールを構成して管理する方法について説明します。階層型ファイアウォール ポリシーとルールを作成する場合は、 階層型ファイアウォール ポリシーと ルールの使用をご覧ください。

始める前に

ロール

ファイアウォール ルールを作成、表示、削除するには、プロジェクトに必要な Identity and Access Management(IAM) ロール を付与するよう管理者に依頼してください。ロールの付与の詳細については、アクセスを管理する プロジェクト、フォルダ、 組織をご覧ください。

このページに記載されているオペレーションの進行状況を確認するには、ユーザー ロールに次のプロジェクト レベルの Compute Security Adminroles/compute.securityAdmin)、Compute Network Adminroles/compute.networkAdmin)、Compute Viewer(roles/compute.viewer) ロールがあることを確認してください。

  • compute.networks.get
  • compute.networks.list
  • compute.firewallPolicies.create
  • compute.firewallPolicies.update
  • compute.firewallPolicies.removeAssociation

ファイアウォール ポリシーとルールを作成する

APPLY_SECURITY_PROFILE_GROUP アクションを使用して、ファイアウォール ポリシーとルールを作成します。

コンソール

ネットワーク ファイアウォール ポリシーを作成する手順は次のとおりです。

  1. コンソールで、[**ファイアウォール ポリシー**] ページに移動します。 Google Cloud

    [ファイアウォール ポリシー] に移動

  2. プロジェクト セレクタのリストで、組織内のプロジェクトを選択します。

  3. [ファイアウォール ポリシーを作成] をクリックします。

  4. [名前] フィールドに、ポリシーの名前を入力します。

  5. [**デプロイのスコープ**] で [**グローバル**] を選択します。

  6. ポリシーのルールを作成する場合は、 [続行] をクリックしてから、[ルールを追加] をクリックします。

    1. [優先度] フィールドで、ルールの順序番号を設定します。ここで、0 が最優先されます。
    2. [**トラフィックの方向**] で、[**上り(内向き)**] を選択します。
    3. [一致したときのアクション] で、[L7 の検査に進む] を選択します。
    4. [**目的**] で、[**NSI インバンド**] を選択します。
    5. [セキュリティ プロファイル グループ] で、カスタム インターセプト セキュリティ プロファイル グループを選択します。
    6. [**ターゲット タイプ**] で、ルールのターゲットを指定します。
    7. [**送信元フィルタ**] で、送信元フィルタを指定します。
    8. [**宛先**] で、宛先フィルタを指定します。
    9. [プロトコルとポート] で、すべてのプロトコルとポートにルールを適用することを指定するか、適用するプロトコルと宛先ポートを指定します。
    10. [作成] をクリックします。
  7. [ルールを追加] をクリックして別のルールを追加します。

  8. ポリシーを VPC ネットワークに関連付けるには、 [続行] をクリックしてから [関連付け] をクリックします。

  9. [作成] をクリックします。

詳細については、グローバル ネットワーク ファイアウォール ルールを作成するをご覧ください。

gcloud

ネットワーク ファイアウォール ポリシーを作成するには、 gcloud compute firewall-policies create コマンドを使用します。

gcloud compute network-firewall-policies create FIREWALL_POLICY

ファイアウォール ルールを作成するには、 gcloud compute network-firewall-policies rules create コマンドを使用します。

gcloud compute network-firewall-policies rules create PRIORITY \
    --action APPLY_SECURITY_PROFILE_GROUP \
    --firewall-policy FIREWALL_POLICY \
    --security-profile-group organizations/ORGANIZATION_ID/locations/global/securityProfileGroups/SECURITY_PROFILE_GROUP_ID \
    --direction DIRECTION \
    --layer4-configs LAYER4_CONIFG \
    --src-ip-ranges SRC_IP_RANGE \
    [--dest-ip-ranges DEST_IP_RANGE] \
    --global-firewall-policy

次のように置き換えます。

  • PRIORITY: 追加するルールの優先度。

  • FIREWALL_POLICY: ルールの作成に使用するファイアウォール ポリシー ID。

  • ORGANIZATION_ID: セキュリティ プロファイル グループが作成される組織の ID。

  • SECURITY_PROFILE_GROUP_ID: custom-intercept-profile アクションを持つセキュリティ プロファイル グループの ID。

  • DIRECTION: ルールが ingress ルールか egress ルールかを示します。方向が指定されていない場合は、デフォルトで受信トラフィックにルールが適用されます。受信トラフィックの場合、宛先範囲を指定することはできません。送信トラフィックの場合、送信元範囲または送信元タグを指定することはできません。

  • LAYER4_CONFIG: ファイアウォール ルールが適用される宛先プロトコルとポートのリスト。

  • SRC_IP_RANGE: 送信元 IP の範囲。これは、DIRECTIONingress の場合にのみ指定されます。

  • DEST_IP_RANGE: 宛先 IP の範囲。これは、DIRECTIONegress の場合にのみ指定されます。

Terraform

ファイアウォール ポリシーを作成するには、google_compute_firewall_policy リソースを使用します。

resource "google_compute_network_firewall_policy" "default" {
  name = "firewall-policy"
}

ファイアウォール ポリシールールを作成するには、google_compute_network_firewall_policy_rule リソースを使用します。

resource "google_compute_network_firewall_policy_rule" "default" {
  firewall_policy        = google_compute_network_firewall_policy.default.name
  priority               = 1000
  action                 = "apply_security_profile_group"
  direction              = "INGRESS"
  security_profile_group = google_network_security_security_profile_group.default.id

  match {
    layer4_configs {
      ip_protocol = "tcp"
      ports       = ["80"]
    }
    src_ip_ranges = ["10.10.0.0/16"]
  }
}

Terraform 構成を適用または削除する方法については、 基本的な Terraform コマンドをご覧ください。

ファイアウォール ポリシーとルールを記述する

すべてのファイアウォール ルールなど、ポリシーの詳細を確認できます。

コンソール

  1. Google Cloud コンソールで、[ファイアウォール ポリシー] ページに移動します。

    [ファイアウォール ポリシー] に移動

  2. プロジェクト選択ツールから、グローバル ネットワーク ファイアウォール ポリシーを含むプロジェクトを選択します。

  3. ポリシーをクリックします。

  4. ルールの詳細を表示するには、ルールの優先度をクリックします。

gcloud

ファイアウォール ポリシーを記述するには、 gcloud compute network-firewall-policies describe コマンドを使用します。

gcloud compute network-firewall-policies describe FIREWALL_POLICY

ファイアウォール ルールを記述するには、 gcloud compute network-firewall-policies rules describe コマンドを使用します。

gcloud compute network-firewall-policies rules describe PRIORITY \
    --firewall-policy FIREWALL_POLICY

FIREWALL_POLICY は、ルールが定義されているファイアウォール ポリシー ID に置き換えます。

ファイアウォール ポリシーとルールを削除する

ポリシーとそのファイアウォール ルールを削除できます。組織のファイアウォール ポリシーを削除する前に、そのポリシーの関連付けをすべて削除する必要があります。

コンソール

  1. Google Cloud コンソールで、[ファイアウォール ポリシー] ページに移動します。

    [ファイアウォール ポリシー] に移動

  2. プロジェクト選択ツールから、ポリシーを含むプロジェクトを選択します。

  3. ポリシーをクリックします。

  4. 削除するルールを選択します。

  5. [削除] をクリックします。

  6. [関連付け] タブをクリックします。

  7. 削除する関連付けを選択します。

  8. [関連付けを削除] をクリックします。

  9. すべての関連付けを削除したら、[削除] をクリックします。

gcloud

ファイアウォール ルールを削除するには、 gcloud compute network-firewall-policies rules delete コマンドを使用します。

gcloud compute network-firewall-policies rules delete PRIORITY \
    --firewall-policy FIREWALL_POLICY

FIREWALL_POLICY は、ルールが定義されているファイアウォール ポリシー ID に置き換えます。

ファイアウォール ポリシーを削除するには、 gcloud compute network-firewall-policies delete コマンドを使用します。

gcloud compute network-firewall-policies delete FIREWALL_POLICY