防火墙政策

防火墙政策可让您将多条防火墙规则分组,以便一次性更新所有防火墙规则,此操作由 Identity and Access Management (IAM) 角色有效控制。这些政策包含可以明确拒绝或允许连接的规则,Virtual Private Cloud (VPC) 防火墙规则就是如此。

分层防火墙政策

分层防火墙政策允许您将规则分组到政策对象中,该对象可应用于一个或多个项目中的许多 VPC 网络。您可以将分层防火墙政策与整个组织或单个文件夹关联。

如需了解分层防火墙政策规范和详细信息,请参阅分层防火墙政策

全球网络防火墙政策数量

通过全球网络防火墙政策,您可以将规则分组到政策对象中,该对象可应用于 VPC 网络的所有区域。

如需了解全球网络防火墙政策规范和详细信息,请参阅全球网络防火墙政策

区域级网络防火墙政策数量

通过区域级网络防火墙政策,您可以将规则分组到可应用于 VPC 网络特定区域的政策对象中。

如需了解区域级防火墙政策规范和详细信息,请参阅区域级网络防火墙政策

区域级系统防火墙政策数量

区域级系统防火墙政策与区域级网络防火墙政策类似,但由 Google 管理。区域级系统防火墙政策具有以下特征:

  • Google Cloud 在评估分层防火墙政策中的规则后,立即评估区域级系统防火墙政策中的规则。如需了解详情,请参阅防火墙规则评估流程

  • 您无法修改区域级系统防火墙政策中的规则,但可以启用或停用防火墙规则日志记录。相反,Google Kubernetes Engine (GKE) 等 Google 服务会使用内部 API 管理区域系统防火墙政策中的规则。

  • Google Cloud 当 Google 服务需要 VPC 网络中某个区域的规则时,会在该区域中创建区域级系统防火墙政策。 Google Cloud 可以根据 Google 服务的需求,将多个区域级系统防火墙政策与 VPC 网络的某个区域相关联。

  • 您无需为评估区域级系统防火墙政策中的规则付费。

网络配置文件互动

常规 VPC 网络支持分层防火墙政策、全球网络防火墙政策、区域级网络防火墙政策和 VPC 防火墙规则中的防火墙规则。所有防火墙规则都作为 Andromeda 网络虚拟化堆栈的一部分进行编程。

使用特定网络配置文件的 VPC 网络会限制您可以使用的防火墙政策和规则属性。对于 RoCE VPC 网络,请参阅 Cloud NGFW for RoCE VPC 网络,而不是本页面。

网络防火墙政策强制执行顺序

每个常规 VPC 网络都有一个网络防火墙政策强制执行顺序,用于控制何时评估全球网络防火墙政策和区域级网络防火墙政策中的规则。

  • AFTER_CLASSIC_FIREWALL(默认):Cloud NGFW 会先评估 VPC 防火墙规则,然后再评估全球网络防火墙政策和区域级网络防火墙政策中的规则。

  • BEFORE_CLASSIC_FIREWALL:Cloud NGFW 会先评估全球网络防火墙政策和区域级网络防火墙政策中的规则,然后再评估 VPC 防火墙规则。

如需更改网络防火墙政策的强制执行顺序,请执行以下任一操作:

  • 使用 networks.patch 方法并设置 VPC 网络的 networkFirewallPolicyEnforcementOrder 属性。

  • 使用带有 --network-firewall-policy-enforcement-order 标志的 gcloud compute networks update 命令

    例如:

    gcloud compute networks update VPC_NETWORK_NAME \
        --network-firewall-policy-enforcement-order=ENFORCEMENT_ORDER
    

防火墙规则评估流程

本部分介绍了 Cloud NGFW 在常规 VPC 网络中评估适用于目标资源的规则的顺序。

每条防火墙规则都是入站规则或出站规则,具体取决于流量方向:

  • 入站规则适用于目标资源接收的新连接的数据包。入站流量规则支持的目标资源如下:

    • 虚拟机 (VM) 实例的网络接口。

    • 内部应用负载平衡器和内部代理网络负载平衡器(预览版)使用的受管 Envoy 代理。

  • 出站流量规则适用于目标虚拟机网络接口发送的新连接的数据包。

Cloud NGFW 始终先评估分层防火墙政策和区域级系统防火墙政策中的规则,然后再评估任何其他防火墙规则。您可以选择网络防火墙政策强制执行顺序,从而控制 Cloud NGFW 评估其他防火墙规则的顺序。网络防火墙政策强制执行顺序可以是 AFTER_CLASSIC_FIREWALLBEFORE_CLASSIC_FIREWALL

AFTER_CLASSIC_FIREWALL 网络防火墙政策强制执行顺序

当网络防火墙政策强制执行顺序为 AFTER_CLASSIC_FIREWALL 时,Cloud NGFW 会在评估 VPC 防火墙规则后评估全球和区域级网络防火墙政策中的规则。这是默认的评估顺序。

在采用 AFTER_CLASSIC_FIREWALL 强制执行顺序的常规 VPC 网络中,完整的防火墙规则评估顺序如下:

  1. 分层防火墙政策

    Cloud NGFW 按以下顺序评估分层防火墙政策:

    1. 与包含目标资源的组织相关联的分层防火墙政策。
    2. 与文件夹祖先(从顶级文件夹到包含目标资源项目的文件夹)关联的分层防火墙政策。

    在评估每个分层防火墙政策中的规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    在分层防火墙政策中,最多只能有一条规则与流量匹配。防火墙规则的匹配时操作可以是以下之一:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。
    • apply_security_profile_group:规则将流量转发到已配置的防火墙端点,并停止所有规则评估。允许还是丢弃数据包的决定取决于安全配置文件组的配置的安全配置文件
    • goto_next:规则评估继续进行,直至达到以下任一结果:
      • 与更接近目标资源的文件夹祖先关联的分层防火墙政策(如果存在)。
      • 评估顺序中的下一步(如果已评估所有分层防火墙政策)。

    如果分层防火墙政策中没有任何规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作。此操作会继续评估,直到达到以下任一状态:

    • 与更接近目标资源的文件夹祖先关联的分层防火墙政策(如果存在)。
    • 评估顺序中的下一步(如果已评估所有分层防火墙政策)。

  2. 区域级系统防火墙政策

    评估区域级系统防火墙政策规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    在区域级系统防火墙政策中,最多只能有一条规则与流量匹配。防火墙规则的匹配时操作可以是以下之一:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。
    • goto_next:规则评估继续到
      • 具有次高关联优先级的区域级系统防火墙政策(如果存在)。
      • 评估顺序中的下一步(如果已评估所有区域级系统防火墙政策)。

    如果区域系统防火墙政策中没有任何规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作。此操作会继续评估,直到达到以下任一状态:

    • 具有次高关联优先级的区域级系统防火墙政策(如果存在)。
    • 评估顺序中的下一步(如果已评估所有区域级系统防火墙政策)。

  3. VPC 防火墙规则

    在评估 VPC 防火墙规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    当一个或两个 VPC 防火墙规则与流量匹配时,防火墙规则的对匹配项执行的操作可以是以下任一值:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。

    如果两条规则匹配,则它们必须具有相同的优先级,但操作不同。在这种情况下,Cloud NGFW 会强制执行 deny VPC 防火墙规则,并忽略 allow VPC 防火墙规则。

    如果没有 VPC 防火墙规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作继续执行评估顺序中的下一步。

  4. 全球网络防火墙政策

    在评估全球网络防火墙政策中的规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    在全球网络防火墙政策中,最多只能有一条规则与流量匹配。防火墙规则的匹配时操作可以是以下之一:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。
    • apply_security_profile_group:规则将流量转发到已配置的防火墙端点,并停止所有规则评估。允许还是丢弃数据包的决定取决于安全配置文件组的配置安全配置文件
    • goto_next:规则评估会继续执行评估顺序中的区域级网络防火墙政策步骤。

    如果全球网络防火墙政策中没有任何规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作。此操作会继续评估,直到评估顺序中的区域级网络防火墙政策步骤。

  5. 区域级网络防火墙政策

    Cloud NGFW 会评估与目标资源的区域和 VPC 网络相关联的区域级网络防火墙政策中的规则。

    在评估区域级网络防火墙政策中的规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    在区域级网络防火墙政策中,最多只能有一条规则与流量匹配。防火墙规则的匹配时操作可以是以下之一:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。
    • goto_next:规则评估继续进行到评估顺序中的下一步。

    如果区域级网络防火墙政策中没有规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作。此操作会继续评估,进入评估顺序中的下一步。

  6. 最后一步 - 隐含操作

    如果防火墙规则评估通过显式或隐式 goto_next 操作继续执行了每个之前的步骤,则 Cloud NGFW 会应用隐式操作。隐含的操作取决于流量的方向:

    • 对于入站流量,隐含操作还取决于目标资源:

      • 如果目标资源是虚拟机实例的网络接口,则隐含的入站操作为 deny

      • 如果目标资源是内部应用负载平衡器或内部代理网络负载平衡器的转发规则,则隐含的入站流量是 allow

    • 对于出站流量,隐含的操作是 allow

AFTER_CLASSIC_FIREWALL 图表

下图展示了 AFTER_CLASSIC_FIREWALL 网络防火墙政策的强制执行顺序:

防火墙规则解析流程。
图 1. 如果网络防火墙政策强制执行顺序为 AFTER_CLASSIC_FIREWALL,则防火墙规则解析流程(点击可放大)。

BEFORE_CLASSIC_FIREWALL 网络防火墙政策强制执行顺序

当网络防火墙政策强制执行顺序为 BEFORE_CLASSIC_FIREWALL 时,Cloud NGFW 会先评估全球和区域级网络防火墙政策中的规则,然后再评估 VPC 防火墙规则。

在采用 BEFORE_CLASSIC_FIREWALL 强制执行顺序的常规 VPC 网络中,完整的防火墙规则评估顺序如下:

  1. 分层防火墙政策

    Cloud NGFW 按以下顺序评估分层防火墙政策:

    1. 与包含目标资源的组织相关联的分层防火墙政策。
    2. 与文件夹祖先(从顶级文件夹到包含目标资源项目的文件夹)关联的分层防火墙政策。

    在评估每个分层防火墙政策中的规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    在分层防火墙政策中,最多只能有一条规则与流量匹配。防火墙规则的匹配时操作可以是以下之一:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。
    • apply_security_profile_group:规则将流量转发到已配置的防火墙端点,并停止所有规则评估。允许还是丢弃数据包的决定取决于安全配置文件组的配置安全配置文件
    • goto_next:规则评估继续进行,直至达到以下任一状态:
      • 与更接近目标资源的文件夹祖先关联的分层防火墙政策(如果存在)。
      • 评估顺序中的下一步(如果已评估所有分层防火墙政策)。

    如果分层防火墙政策中没有任何规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作。此操作会继续评估,直到达到以下任一状态:

    • 与更接近目标资源的文件夹祖先关联的分层防火墙政策(如果存在)。
    • 评估顺序中的下一步(如果已评估所有分层防火墙政策)。

  2. 区域级系统防火墙政策

    评估区域级系统防火墙政策规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    在区域级系统防火墙政策中,最多只能有一条规则与流量匹配。防火墙规则的匹配时操作可以是以下之一:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。
    • goto_next:规则评估继续到
      • 具有次高关联优先级的区域级系统防火墙政策(如果存在)。
      • 评估顺序中的下一步(如果已评估所有区域级系统防火墙政策)。

    如果区域系统防火墙政策中没有任何规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作。此操作会继续评估,直到达到以下任一状态:

    • 具有次高关联优先级的区域级系统防火墙政策(如果存在)。
    • 评估顺序中的下一步(如果已评估所有区域级系统防火墙政策)。

  3. 全球网络防火墙政策

    在评估全球网络防火墙政策中的规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    在全球网络防火墙政策中,最多只能有一条规则与流量匹配。防火墙规则的匹配时操作可以是以下之一:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。
    • apply_security_profile_group:规则将流量转发到已配置的防火墙端点,并停止所有规则评估。允许还是丢弃数据包的决定取决于安全配置文件组的配置安全配置文件
    • goto_next:规则评估继续进行,直至到达评估顺序中的区域级网络防火墙政策这一步。

    如果全球网络防火墙政策中没有任何规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作。此操作会继续评估,直到评估顺序中的区域级网络防火墙政策步骤。

  4. 区域级网络防火墙政策

    Cloud NGFW 会评估与目标资源的区域和 VPC 网络相关联的区域级网络防火墙政策中的规则。

    在评估区域级网络防火墙政策中的规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    在区域级网络防火墙政策中,最多只能有一条规则与流量匹配。防火墙规则的匹配时操作可以是以下之一:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。
    • goto_next:规则评估继续进行到评估顺序中的下一步。

    如果区域级网络防火墙政策中没有规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作。此操作会继续评估,进入评估顺序中的下一步。

  5. VPC 防火墙规则

    在评估 VPC 防火墙规则时,Cloud NGFW 会执行以下步骤:

    1. 忽略目标与目标资源不匹配的所有规则。
    2. 忽略与数据包方向不匹配的所有规则。
    3. 从最高优先级到最低优先级评估剩余规则。

      当满足以下任一条件时,评估会停止:

      • 适用于目标资源的规则与流量匹配。
      • 没有适用于目标资源的规则与流量匹配。

    当一个或两个 VPC 防火墙规则与流量匹配时,防火墙规则的对匹配项执行的操作可以是以下任一值:

    • allow:规则允许流量,并停止所有规则评估。
    • deny:规则拒绝流量,并停止所有规则评估。

    如果两条规则匹配,则它们必须具有相同的优先级,但操作不同。在这种情况下,Cloud NGFW 会强制执行 deny VPC 防火墙规则,并忽略 allow VPC 防火墙规则。

    如果没有 VPC 防火墙规则与流量匹配,Cloud NGFW 会使用隐式 goto_next 操作继续执行评估顺序中的下一步。

  6. 最后一步 - 隐含操作

    如果防火墙规则评估通过显式或隐式 goto_next 操作继续执行了每个之前的步骤,则 Cloud NGFW 会应用隐式操作。隐含的操作取决于流量的方向:

    • 对于入站流量,隐含操作还取决于目标资源:

      • 如果目标资源是虚拟机实例的网络接口,则隐含的入站操作为 deny

      • 如果目标资源是内部应用负载平衡器或内部代理网络负载平衡器的转发规则,则隐含的入站流量是 allow

    • 对于出站流量,隐含的操作是 allow

BEFORE_CLASSIC_FIREWALL 图表

下图展示了 BEFORE_CLASSIC_FIREWALL 网络防火墙政策的强制执行顺序:

防火墙规则解析流程。
图 2. 如果网络防火墙政策强制执行顺序为 BEFORE_CLASSIC_FIREWALL,则防火墙规则解析流程(点击可放大)。

有效的防火墙规则

分层防火墙政策规则、VPC 防火墙规则以及全球和区域级网络防火墙政策规则控制连接。您可能会发现,查看影响单个网络或虚拟机接口的所有防火墙规则会很有帮助。

对网络有效的防火墙规则

您可以查看应用于 VPC 网络的所有防火墙规则。列表包括以下所有规则:

  • 从分层防火墙政策继承的规则
  • VPC 防火墙规则
  • 从全球和区域级网络防火墙政策应用的规则

对实例有效的防火墙规则

您可以查看应用于虚拟机的网络接口的所有防火墙规则。列表包括以下所有规则:

  • 从分层防火墙政策继承的规则
  • 从接口的 VPC 防火墙应用的规则
  • 从全球和区域级网络防火墙政策应用的规则

规则按照从组织层级到 VPC 网络的顺序排列。仅显示应用于虚拟机接口的规则。不显示其他政策中的规则。

如需查看某个区域内的有效防火墙政策规则,请参阅获取网络的有效区域级防火墙政策

预定义规则

创建分层防火墙政策、全球网络防火墙政策或区域级网络防火墙政策时,Cloud NGFW 会向政策添加预定义规则。Cloud NGFW 添加到政策的预定义规则取决于您创建政策的方式。

如果您使用 Google Cloud 控制台创建防火墙政策,则 Cloud NGFW 会将以下规则添加到新政策中:

  1. 专用 IPv4 范围的转到下一个规则
  2. 预定义的 Google Threat Intelligence 拒绝规则
  3. 预定义的地理位置拒绝规则
  4. 尽可能低的优先级转到下一个规则

如果您使用 Google Cloud CLI 或 API 创建防火墙政策,则 Cloud NGFW 只会将尽可能低的优先级转到下一个规则添加到政策。

新防火墙政策中的所有预定义规则有意使用低优先级(大优先级编号),因此您可以通过创建规则(优先级更高的规则)来替换这些规则。除了尽可能低的优先级转到下一个规则之外,您还可以自定义预定义的规则。

专用 IPv4 范围的转到下一个规则

  • 具有目的地 IPv4 范围 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16、优先级 1000goto_next 操作的出站流量规则。

  • 具有来源 IPv4 范围 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16、优先级 1001goto_next 操作的入站流量规则。

预定义的 Google Threat Intelligence 拒绝规则

  • 具有来源 Google Threat Intelligence 列表 iplist-tor-exit-nodes、优先级 1002deny 操作的入站流量规则。

  • 具有来源 Google Threat Intelligence 列表 iplist-known-malicious-ips、优先级 1003deny 操作的入站流量规则。

  • 具有目的地 Google Threat Intelligence 列表 iplist-known-malicious-ips、优先级 1004deny 操作的出站流量规则。

如需详细了解 Google Threat Intelligence,请参阅防火墙政策规则的 Google Threat Intelligence

预定义的地理位置拒绝规则

  • 来源匹配地理位置为 CUIRKPSYXCXD,优先级为 1005 且操作为 deny 的入站流量规则。

如需详细了解地理位置,请参阅地理位置对象

尽可能低的优先级转到下一个规则

您无法修改或删除以下规则:

  • 具有目的地 IPv6 范围 ::/0、优先级 2147483644goto_next 操作的出站流量规则。

  • 具有来源 IPv6 范围 ::/0、优先级 2147483645goto_next 操作的入站流量规则。

  • 具有目的地 IPv4 范围 0.0.0.0/0、优先级 2147483646goto_next 操作的出站流量规则。

  • 具有来源 IPv4 范围 0.0.0.0/0、优先级 2147483647goto_next 操作的入站流量规则。

后续步骤