本页介绍了基础设施运营商 (IO) 如何创建和配置安全政策规则,以管理组织中的流量,并为客户工作负载流量启用入侵检测和防御系统 (IDPS)。您可以通过 Firewall API 使用 SecurityPolicyRule 自定义资源配置安全政策规则。
准备工作
在继续之前,请确保您已准备好以下内容:
- 包含
kustomization.yaml文件的iac代码库。 - 一个名为
security-policy-rule的文件夹,用于存储包含安全政策规则的文件。
允许任何地址访问组织
您可以通过以下两种方式创建安全政策规则。
创建具有 IP 地址范围或 IP 地址网络掩码的安全政策规则
为
AddressGroup资源创建 YAML 文件。AddressGroup包含可供SecurityPolicyRule使用的 IP 地址范围或 IP 地址网络掩码。添加以下内容以创建
AddressGroup自定义资源:apiVersion: firewall.private.gdc.goog/v1alpha2 kind: AddressGroup metadata: labels: firewall.private.gdc.goog/type: idps name: SOURCE_AG_OBJECT_NAME namespace: NAMESPACE spec: addressGroupName: SOURCE_ADDRESS_GROUP firewallVirtualSystemRef: name: FIREWALL_VIRTUAL_SYSTEM_NAME members: - name: SOURCE_MEMBER_NAME type: SOURCE_MEMBER_TYPE value: SOURCE_MEMBER_VALUE --- apiVersion: firewall.private.gdc.goog/v1alpha2 kind: AddressGroup metadata: labels: firewall.private.gdc.goog/type: idps name: DESTINATION_AG_OBJECT_NAME namespace: NAMESPACE spec: addressGroupName: DESTINATION_ADDRESS_GROUP firewallVirtualSystemRef: name: FIREWALL_VIRTUAL_SYSTEM_NAME members: - name: DESTINATION_MEMBER_NAME type: DESTINATION_MEMBER_TYPE value: DESTINATION_MEMBER_VALUE保存地址组并将其存储在
security-policy-rule文件夹中。添加以下内容以创建
SecurityPolicyRule自定义资源:apiVersion: firewall.private.gdc.goog/v1alpha2 kind: SecurityPolicyRule metadata: labels: firewall.private.gdc.goog/policy-type: idps name: RULE_NAME namespace: NAMESPACE spec: firewallVirtualSystemRef: name: FIREWALL_VIRTUAL_SYSTEM_NAME priority: PRIORITY source: zones: - SOURCE_ZONE addresses: - SOURCE_ADDRESS_GROUP destination: zones: - DESTINATION_ZONE addresses: - DESTINATION_ADDRESS_GROUP action: ACTION service: option: OPTION ports: - protocol: PROTOCOL ports: "PORT" profile: type: PROFILE_TYPE执行以下变量替换操作:
变量 说明 SOURCE_AG_OBJECT_NAME 地址组对象的名称。例如 vsys2-org-1-org-infra-group。NAMESPACE 命名空间必须与组织的名称一致。例如 org-1。SOURCE_ADDRESS_GROUP 包含源 IP 地址的地址组的名称。例如 org-infra-group。FIREWALL_VIRTUAL_SYSTEM_NAME 与组织关联的防火墙虚拟系统的名称。例如 vsys2-org-1。使用kubectl get firewallvirtualsystems -A列出所有虚拟系统名称。SOURCE_MEMBER_NAME 地址组中成员的名称。例如 org-infra-group-0。可以有多个成员,每个成员都有唯一的名称。SOURCE_MEMBER_TYPE 地址组中成员的类型。可用的值包括 IPRange、IPNetmask。SOURCE_MEMBER_VALUE 成员中的 IP 地址。例如,如果会员类型为 IPNetmask,则值可以是169.254.0.0/21。如果成员类型为IPrange,则值可以是192.168.1.1-192.168.1.10。DESTINATION_AG_OBJECT_NAME 地址组对象的名称。例如 vsys2-org-1-org-data-external-all-group。DESTINATION_ADDRESS_GROUP 包含源 IP 地址的地址组的名称。例如 org-data-external-all-group。DESTINATION_MEMBER_NAME 地址组中成员的名称。例如 org-data-external-all-group-0。可以有多个成员,每个成员都有唯一的名称。DESTINATION_MEMBER_TYPE 地址组中成员的类型。可用的值包括 IPRange、IPNetmask。DESTINATION_MEMBER_VALUE 成员中的 IP 地址。例如,如果会员类型为 IPNetmask,则值可以是169.254.0.0/21。如果成员类型为IPrange,则值可以是192.168.1.1-192.168.1.10。RULE_NAME 规则的名称。例如 allow-ingress-org-1。PRIORITY 介于 1000和60000之间的整数,用于定义优先级。最高优先级为1000,最低优先级为60000。此示例使用最高优先级1000。SOURCE_ZONE 流量的来源防火墙区域。例如 vsys2-oc。DESTINATION_ZONE 流量的目标防火墙区域。例如 vsys2-gpc。ACTION 用于定义是允许还是拒绝流量的操作。例如,使用操作 allow。OPTION 用于设置服务的选项。用于设置服务的可选值包括: any:定义使用任何端口。application-default:应用的默认端口。selected:您选择的协议和端口。
PROTOCOL 您定义的网络协议。例如, TCP或UDP等协议PORT 端口号。例如 1234。PROFILE_TYPE 配置文件的类型,例如 none、group和profiles。将安全政策规则保存并存储在
security-policy-rule文件夹中。前往您的
iac代码库,并将安全政策规则提交到main分支。ls IAC_REPO_PATH/iac/infrastructure/global/orgs/root/kustomization.yaml如果该文件不存在,请按照使用 IAC 创建组织中的步骤 8 到 12 操作。
按照 runbook FW-G0003 中的第 3 步触发防火墙完整配置替换来处理防火墙配置替换。
创建具有特定 IP 地址的安全政策规则
为
SecurityPolicyRule资源创建 YAML 文件。添加以下内容以创建
SecurityPolicyRule自定义资源:apiVersion: firewall.private.gdc.goog/v1alpha2 kind: SecurityPolicyRule metadata: labels: firewall.private.gdc.goog/policy-type: idps name: RULE_NAME namespace: NAMESPACE spec: firewallVirtualSystemRef: name: FIREWALL_VIRTUAL_SYSTEM_NAME priority: PRIORITY source: zones: - SOURCE_ZONE addresses: - SOURCE_IP_ADDRESS destination: zones: - DESTINATION_ZONE addresses: - DESTINATION_IP_ADDRESS action: ACTION service: option: OPTION ports: - protocol: PROTOCOL ports: "PORT" profile: type: PROFILE_TYPE执行以下变量替换操作:
变量 说明 RULE_NAME 规则的名称。例如 allow-ingress-org-1。NAMESPACE 命名空间必须与组织的名称一致。例如 org-1。FIREWALL_VIRTUAL_SYSTEM_NAME 防火墙的名称。例如 vsys2-org1。PRIORITY 介于 1000和60000之间的整数,用于定义优先级。最高优先级为1000,最低优先级为60000。例如,如果规则需要最高优先级,请使用1000。SOURCE_ZONE 流量的来源防火墙区域。例如 vsys2-oc。SOURCE_IP_ADDRESS 允许流量通过的 IP 地址。IP 地址格式可以是单个 IP 地址 10.250.10.1、无类别域间路由 (CIDR)10.250.10.0/27、IP 地址范围10.250.10.1-10.250.10.8或any。
例如,172.21.0.0/20表示172.21.0.0/20CIDR 中的任何源 IP 地址都与此规则匹配。DESTINATION_ZONE 流量的目标防火墙区域。例如 vsys2-gpc。DESTINATION_IP_ADDRESS 允许流量通过的 IP 地址。IP 地址格式可以是单个 IP 地址 10.250.10.1、无类别域间路由 (CIDR)10.250.10.0/27、IP 地址范围10.250.10.1-10.250.10.8或any。
例如,值any表示任何目标 IP 地址都将与该规则匹配。ACTION 用于定义是 allow还是deny流量的操作。例如,allow允许流量。OPTION 用于设置服务的选项。用于设置服务的可选值包括: 如需了解详情,请参阅 API 参考文档。any:定义使用任何端口。application-default:应用的默认端口。selected:您选择的协议和端口。
PROTOCOL 您定义的网络协议。例如, TCP表示传输控制协议。PORT 端口号。例如 443。PROFILE_TYPE 配置文件的类型,例如 none、group和profiles。例如,使用none的配置文件类型意味着不应用任何 IDPS。将安全政策规则保存并存储在
security-policy-rule文件夹中。前往您的
iac代码库,并将安全政策规则提交到main分支。ls IAC_REPO_PATH/iac/infrastructure/global/orgs/root/kustomization.yaml如果该文件不存在,请按照使用 IAC 创建组织中的步骤 8 到 12 操作。
按照 runbook FW-G0003 中的第 3 步触发防火墙完整配置替换来处理防火墙配置替换。