VPC 防火墙规则日志记录格式

本页面介绍了 Cloud Logging 中的 VPC 防火墙规则日志记录结构。当启用了日志记录的虚拟私有云 (VPC) 规则应用于进出虚拟机实例的数据流量时,Cloud Logging 会创建一个日志条目。日志记录会显示在 Logging LogEntry的 JSON 载荷 字段中。

防火墙日志记录包含基本字段(即每个日志记录的核心字段)以及可选的元数据字段。如需降低存储费用,您可以排除元数据字段。

某些日志字段可以将其他字段作为值。例如,connection 字段使用 IpConnection 格式,该格式在单个字段中包含来源 IP 地址和目的地 IP 地址、端口以及协议。

下表介绍了 VPC 防火墙规则支持的日志字段。

字段名称 字段类型:基本或可选元数据 说明
connection IpConnection 一个 5 元组,描述了此连接的来源 IP 地址和目的地 IP 地址、来源端口和 目的地端口以及 IP 协议。
disposition 基本 指明连接是 ALLOWED 还是 DENIED
rule_details.reference 基本 对防火墙规则的引用。对于 VPC 防火墙 规则,格式为 network:{network name}/firewall:{firewall_name}
rule_details.priority 基本 为 VPC 防火墙规则定义的优先级。
rule_details.action 基本 指明连接是 ALLOWED 还是 DENIED
rule_details.direction 基本 防火墙规则适用的方向:ingressegress
rule_details.ip_port_info[ ] IpPortDetails IP 协议和适用端口范围的列表。 对于 VPC 防火墙规则,ip_protocol 子字段可以是 ALL
rule_details.source_range[ ]
rule_details.destination_range[ ]
元数据 VPC 防火墙规则适用的来源或目的地 IP 范围的列表。
rule_details.source_tag[ ]
rule_details.target_tag[ ]
元数据 VPC 防火墙规则适用的所有来源或目标网络标记的列表。
rule_details.source_service_account[ ]
rule_details.target_service_account[ ]
元数据 VPC 防火墙规则适用的所有来源或目标服务账号的列表。
instance 元数据 InstanceDetails
虚拟机实例详细信息。在共享 VPC 配置中,project_id 与服务项目的此内容相对应。
load_balancer_details 元数据 LoadBalancingDetails
防火墙规则适用的内部应用负载平衡器或内部代理网络负载平衡器的详细信息。当防火墙规则的目标是其中一个负载 均衡器时,系统会省略 instance 字段。
vpc 元数据 VpcDetails
VPC 网络详细信息。在共享 VPC 配置中,project_id 与宿主项目的相应参数相对应。
remote_instance 元数据 InstanceDetails
如果连接的远程端点是位于 Compute Engine 中的 虚拟机,则此字段会填充虚拟机实例 详细信息。
remote_vpc 元数据 VpcDetails
如果连接的远程端点是位于 VPC 网络中的虚拟机,则此字段会填充网络 详细信息。
remote_location 元数据 GeographicDetails
如果连接的远程端点在 VPC 网络的外部,则此字段会填充可用位置元数据。

IpConnection

字段 类型 说明
src_ip 字符串 来源 IP 地址。如果来源是 Compute Engine 虚拟机, src_ip 是主要内部 IP 地址或虚拟机网络接口的别名 IP 范围内的地址。系统不显示外部 IP 地址。如果虚拟机在数据包标头上发现虚拟机的 IP 地址,则 Logging 将显示此地址,这与您在虚拟机上运行 tcpdump一样。
src_port 整数 来源端口。
dest_ip 字符串 目的地 IP 地址。如果目的地是 虚拟机,则 dest_ip 是主要内部 IP 地址或虚拟机网络接口的别名 IP 范围内的地址。 Google Cloud 即使使用外部 IP 地址进行连接,系统也不会显示此地址。
dest_port 整数 目的地端口。
protocol 整数 连接的 IP 协议

RuleDetails

字段 类型 说明
reference 字符串 对 VPC 防火墙规则的引用;格式:
network:{network name}/firewall:{VPC firewall rule name}
priority 整数 VPC 防火墙规则的优先级。
action 字符串 应用于连接的操作。支持的值为 ALLOWDENY
direction 字符串 VPC 防火墙规则适用的方向 (ingressegress)。
source_range[ ] 字符串 VPC 防火墙规则适用的来源范围列表。
destination_range[ ] 字符串 VPC 防火墙规则适用的目的地范围列表。
source_tag[ ] 字符串 VPC 防火墙规则适用的来源网络标记列表。
target_tag[ ] 字符串 VPC 防火墙规则适用的目标网络标记列表。
source_service_account[ ] 字符串 VPC 防火墙规则适用的所有来源服务账号的列表。
target_service_account[ ] 字符串 VPC 防火墙规则适用的所有目标服务账号的列表。

IpPortDetails

字段 类型 说明
ip_protocol 字符串 VPC 防火墙规则所应用的 IP 协议。如果该规则适用于所有 IP 协议,则可以设置为 ALL
port_range[ ] 字符串 VPC 防火墙规则的适用端口范围列表。 例如,8080-9090

InstanceDetails

字段 类型 说明
project_id 字符串 包含虚拟机的项目的 ID。
vm_name 字符串 虚拟机的实例名称。
region 字符串 虚拟机的区域。
zone 字符串 虚拟机的可用区。

LoadBalancingDetails

字段 类型 说明
forwarding_rule_project_id 字符串 Google Cloud 包含转发规则的项目 ID。当负载均衡器是目标而不是虚拟机时发送。
type 字符串 负载平衡器类型:APPLICATION_LOAD_BALANCER 表示 内部应用负载平衡器。PROXY_NETWORK_LOAD_BALANCER 表示 内部代理网络负载平衡器。当负载均衡器是目标而不是虚拟机时发送。
scheme 字符串 负载平衡器方案,INTERNAL_MANAGED。当负载均衡器是目标而不是虚拟机时发送。
url_map_name 字符串 网址映射的名称。仅当 typeAPPLICATION_LOAD_BALANCER 时填充。当负载均衡器是目标而不是虚拟机时发送。
forwarding_rule_name 字符串 转发规则的名称。当负载均衡器是目标而不是虚拟机时发送。

VpcDetails

字段 类型 说明
project_id 字符串 包含网络的项目的 ID。
vpc_name 字符串 虚拟机运行的网络。
subnetwork_name 字符串 虚拟机运行的子网。

GeographicDetails

字段 类型 说明
continent 字符串 大洲的名称。如果连接的远程端点在 VPC 外部,则适用。
country 字符串 国家/地区的名称。如果连接的远程端点在 VPC 外部,则适用。
region 字符串 区域的名称。如果连接的远程端点在 VPC 外部,则适用。
city 字符串 城市的名称。如果连接的远程端点在 VPC 外部,则适用。

后续步骤