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

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

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

始める前に

ロール

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

このページに記載されているオペレーションの進行状況を確認するには、ユーザー ロールに次のプロジェクト レベルの Compute セキュリティ管理者roles/compute.securityAdmin)、Compute ネットワーク管理者roles/compute.networkAdmin)、Compute 閲覧者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