创建和管理防火墙规则

如需检查消费者的网络流量,您可以使用防火墙政策将流量重定向到 VPC 的拦截端点组。然后,流量会通过提供商的拦截部署组到达其计算资源。

本页面介绍了如何配置和管理全球网络防火墙政策和规则。如果您想创建分层防火墙政策和规则,请参阅使用分层防火墙政策和规则

准备工作

角色

如需创建、查看或删除防火墙规则,请让您的管理员向您授予项目的必要 Identity and Access Management (IAM) 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

如需检查本页面中列出的操作的进度,请确保您的用户角色具有以下项目级 Compute Security Admin (roles/compute.securityAdmin)、Compute Network Admin (roles/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. 点击 Remove Associations(移除关联)。

  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