防火墙政策可让您将多条防火墙规则分组,以便一次性更新所有防火墙规则,此操作由 Identity and Access Management (IAM) 角色有效控制。这些政策包含可以明确拒绝或允许连接的规则,Virtual Private Cloud (VPC) 防火墙规则就是如此。
分层防火墙政策
分层防火墙政策允许您将规则分组到政策对象中,该对象可应用于一个或多个项目中的许多 VPC 网络。您可以将分层防火墙政策与整个组织或单个文件夹关联。
如需了解分层防火墙政策规范和详细信息,请参阅分层防火墙政策。
全球网络防火墙政策
通过全球网络防火墙政策,您可以将规则分组到适用于所有区域(全球)的政策对象。将全球网络防火墙政策与 VPC 网络关联后,政策中的规则可以应用于 VPC 网络中的资源。
如需了解全球网络防火墙政策规范和详细信息,请参阅全球网络防火墙政策。
区域级网络防火墙政策
通过区域级网络防火墙政策,您可以将规则分组到适用于特定区域的政策对象中。将区域级网络防火墙政策与 VPC 网络关联后,该政策中的规则可以应用于 VPC 网络中该区域的资源。
如需了解区域级防火墙政策规范和详细信息,请参阅区域级网络防火墙政策。
政策和规则评估顺序
分层防火墙政策、全球网络防火墙政策、区域级网络防火墙政策和 VPC 防火墙规则是在 Andromeda 网络虚拟化堆栈虚拟机数据包处理过程中实现的。针对虚拟机的每个网络接口 (NIC) 评估规则。
规则的适用性不依赖于其协议和端口配置的特异性。例如,允许所有协议的规则的较高优先级优先于特定于 TCP
端口 22 的较低优先级拒绝规则。
此外,规则的适用性不取决于目标参数的特异性。例如,即使优先级较低的拒绝规则具有较具体的目标参数(比如特定的服务账号或标记),允许所有虚拟机(所有目标)的规则较高优先级仍然优先。
确定政策和规则评估顺序
防火墙政策规则和 VPC 防火墙规则的评估顺序由连接到虚拟机 NIC 的 VPC 网络的 networkFirewallPolicyEnforcementOrder
标志确定。
networkFirewallPolicyEnforcementOrder
标志可以具有以下两个值:
BEFORE_CLASSIC_FIREWALL
:如果将该标志设置为BEFORE_CLASSIC_FIREWALL
,则在规则评估顺序中,全球网络防火墙政策和区域级网络防火墙政策会在 VPC 防火墙规则之前进行评估。AFTER_CLASSIC_FIREWALL
:如果将该标志设置为AFTER_CLASSIC_FIREWALL
,则在规则评估顺序中,全球网络防火墙政策和区域级网络防火墙政策会在 VPC 防火墙规则之后进行评估。AFTER_CLASSIC_FIREWALL
是networkFirewallPolicyEnforcementOrder
标志的默认值。
如需更改规则评估顺序,请参阅更改政策和规则评估顺序。
默认政策和规则评估顺序
默认情况下,当连接到虚拟机 NIC 的 VPC 网络的 networkFirewallPolicyEnforcementOrder
为 AFTER_CLASSIC_FIREWALL
时,Google Cloud 会按以下顺序评估适用于虚拟机 NIC 的规则:
如果分层防火墙政策与包含虚拟机的项目的组织关联,则 Google Cloud 会评估分层防火墙政策中的所有适用规则。由于分层防火墙政策中的规则必须是唯一的,因此与流量方向和第 4 层特征匹配的最高优先级规则确定流量的处理方式:
如果分层防火墙政策与虚拟机项目的最远(顶部)文件夹祖先关联,则 Google Cloud 将评估该文件夹的分层防火墙政策中的所有适用规则。由于分层防火墙政策中的规则必须是唯一的,因此与流量方向和第 4 层特征匹配的最高优先级规则确定流量的处理方式(
allow
、deny
、、apply_security_profile_group
、 或goto_next
),如第一步中所述。Google Cloud 会对在资源层次结构中较靠近虚拟机项目的文件夹关联的分层防火墙政策重复上一步的操作。Google Cloud 首先评估与最远的文件夹祖先(最接近组织)关联的分层防火墙政策中的规则,然后评估与较靠近虚拟机项目的下一个(子)文件夹关联的分层防火墙政策中的规则。
如果虚拟机的 NIC 使用的 VPC 网络中存在 VPC 防火墙规则,Google Cloud 会评估所有适用的 VPC 防火墙规则。
与防火墙政策中的规则不同:
VPC 防火墙规则没有显式
goto_next
或apply_security_profile_group
操作。VPC 防火墙规则只能配置为允许或拒绝流量。一个 VPC 网络中的两个或更多 VPC 防火墙规则可以共享相同的优先级编号。在这种情况下,拒绝规则优先于允许规则。如需详细了解 VPC 防火墙规则优先级,请参阅 VPC 防火墙规则文档中的优先级。
如果没有 VPC 防火墙规则应用于流量,则 Google Cloud 会继续下一步,即隐式
goto_next
。如果全球网络防火墙政策与虚拟机 NIC 的 VPC 网络相关联,则 Google Cloud 会评估防火墙政策中的所有适用规则。由于防火墙政策中的规则必须是唯一的,因此与流量方向和第 4 层特征匹配的最高优先级规则确定流量的处理方式(
allow
、deny
、、apply_security_profile_group
、 或goto_next
),如第一步中所述。如果区域级网络防火墙政策与虚拟机的 NIC 的 VPC 网络和虚拟机区域关联,则 Google Cloud 会评估防火墙政策中的所有适用规则。由于防火墙政策中的规则必须是唯一的,因此与流量方向和第 4 层特征匹配的最高优先级规则确定流量的处理方式:
allow
、deny
或goto_next
,如第一步中所述。作为评估中的最后一步,Google Cloud 会强制执行隐式允许出站流量和隐式拒绝入站流量 VPC 防火墙规则。
下图展示了防火墙规则的解析流程。
更改政策和规则评估顺序
Google Cloud 可让您通过交换 VPC 防火墙规则和网络防火墙政策(全球和区域级)的顺序来更改默认规则评估过程。执行此交换后,全球网络防火墙政策(第 5 步)和区域级网络防火墙政策(第 6 步)会按规则评估顺序在 VPC 防火墙规则(第 4 步)之前先进行评估。
如需更改规则评估顺序,请运行以下命令以将 VPC 网络的 networkFirewallPolicyEnforcementOrder
属性设置为 BEFORE_CLASSIC_FIREWALL
:
gcloud compute networks update VPC-NETWORK-NAME \ --network-firewall-policy-enforcement-order BEFORE_CLASSIC_FIREWALL
如需了解详情,请参阅 networks.patch
方法。
有效的防火墙规则
分层防火墙政策规则、VPC 防火墙规则以及全球和区域级网络防火墙政策规则控制连接。您可能会发现,查看影响单个网络或虚拟机接口的所有防火墙规则会很有帮助。
对网络有效的防火墙规则
您可以查看应用于 VPC 网络的所有防火墙规则。列表包括以下所有规则:
- 从分层防火墙政策继承的规则
- VPC 防火墙规则
- 从全球和区域级网络防火墙政策应用的规则
对实例有效的防火墙规则
您可以查看应用于虚拟机的网络接口的所有防火墙规则。列表包括以下所有规则:
- 从分层防火墙政策继承的规则
- 从接口的 VPC 防火墙应用的规则
- 从全球和区域级网络防火墙政策应用的规则
规则按照从组织层级到 VPC 网络的顺序排列。仅显示应用于虚拟机接口的规则。不显示其他政策中的规则。
如需查看某个区域内的有效防火墙政策规则,请参阅获取网络的有效防火墙政策。
预定义规则
创建分层防火墙政策、全球网络防火墙政策或区域级网络防火墙政策时,Cloud NGFW 会向政策添加预定义规则。Cloud NGFW 添加到政策的预定义规则取决于您创建政策的方式。
如果您使用 Google Cloud 控制台创建防火墙政策,则 Cloud NGFW 会将以下规则添加到新政策中:
如果您使用 Google Cloud CLI 或 API 创建防火墙政策,则 Cloud NGFW 只会将尽可能低的优先级转到下一个规则添加到政策。
新防火墙政策中的所有预定义规则有意使用低优先级(大优先级编号),因此您可以通过创建规则(优先级更高的规则)来替换这些规则。除了尽可能低的优先级转到下一个规则之外,您还可以自定义预定义的规则。
专用 IPv4 范围的转到下一个规则
具有目的地 IPv4 范围
10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16
、优先级1000
和goto_next
操作的出站流量规则。具有来源 IPv4 范围
10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16
、优先级1001
和goto_next
操作的入站流量规则。
预定义的 Google Threat Intelligence 拒绝规则
具有来源 Google 威胁情报列表
iplist-tor-exit-nodes
、优先级1002
和deny
操作的入站流量规则。具有来源 Google 威胁情报列表
iplist-known-malicious-ips
、优先级1003
和deny
操作的入站流量规则。具有目的地 Google 威胁情报列表
iplist-known-malicious-ips
、优先级1004
和deny
操作的出站流量规则。
如需详细了解 Google 威胁情报,请参阅防火墙政策规则的 Google 威胁情报。
预定义的地理位置拒绝规则
- 来源匹配地理位置为
CU
、IR
、KP
、SY
、XC
和XD
,优先级为1005
且操作为deny
的入站流量规则。
如需详细了解地理位置,请参阅地理位置对象。
尽可能低的优先级转到下一个规则
您无法修改或删除以下规则:
具有目的地 IPv6 范围
::/0
、优先级2147483644
和goto_next
操作的出站流量规则。具有来源 IPv6 范围
::/0
、优先级2147483645
和goto_next
操作的入站流量规则。具有目的地 IPv4 范围
0.0.0.0/0
、优先级2147483646
和goto_next
操作的出站流量规则。具有来源 IPv4 范围
0.0.0.0/0
、优先级2147483647
和goto_next
操作的入站流量规则。
后续步骤
- 如需创建和修改分层防火墙政策和规则,请参阅使用分层防火墙政策。
- 如需查看分层防火墙政策实施的示例,请参阅分层防火墙政策示例。
- 如需创建和修改全球网络防火墙政策和规则,请参阅使用全球网络防火墙政策。
- 如需创建和修改区域级网络防火墙政策和规则,请参阅使用区域级网络防火墙政策。