借助网址过滤服务日志,您可以审核、验证和分析网络中基于网址的流量过滤。
当 Cloud 新一代防火墙对启用第 7 层检查的流量执行基于网址的过滤时,会为每个连接生成一个日志条目,其中包含有关该连接的详细信息。当启用第 7 层检查的防火墙规则被激活时,Cloud NGFW 会生成一个日志条目,无论 Cloud Logging 是否已启用。
如需查看和检查网址过滤日志,请在 Logs Explorer 中搜索日志 networksecurity.googleapis.com/firewall_url_filter。
本页介绍了 Cloud NGFW 在允许或拒绝流量时为每个连接生成的网址过滤日志的格式和结构。
网址过滤日志格式
Cloud NGFW 会在 Cloud Logging 中,为进出特定可用区的虚拟机 (VM) 实例的受监控流量中接受网址过滤的每个连接创建日志记录条目。日志记录包含在 LogEntry 的 JSON 载荷字段中。
某些日志字段采用多字段格式,在给定字段中包含多段数据。例如,connection 字段采用 Connection 格式,它在单个字段中包含服务器 IP 地址和端口、客户端 IP 地址和端口以及协议号。
下表介绍了网址过滤日志字段的格式。
| 字段 | 类型 | 说明 |
|---|---|---|
connection
|
Connection
|
一个 5 元组,用于描述与根据网域和服务器名称指示 (SNI) 信息允许或拒绝的流量关联的连接参数。 |
interceptInstance
|
InterceptInstance
|
根据网域和 SNI 信息允许或拒绝流量的虚拟机实例的详细信息。 |
detectionTime
|
string
|
防火墙端点检测到网域和 SNI 信息匹配的时间(世界协调时)。 |
uriMatched
|
string
|
防火墙端点检测到匹配的网域。 |
interceptVpc
|
VpcDetails
|
与虚拟机实例关联的虚拟私有云 (VPC) 网络的详细信息,其中根据网域和 SNI 信息允许或拒绝流量。 |
ruleIndex
|
integer
|
防火墙端点检测到匹配的网址过滤条件的索引或序号。 |
direction
|
string
|
防火墙端点检测到匹配项的流量方向(CLIENT_TO_SERVER 或 SERVER_TO_CLIENT)。
|
securityProfileGroupDetails
|
SecurityProfileGroupDetails
|
应用于被拦截流量的安全配置文件组的详细信息。 |
denyType
|
string
|
防火墙端点用于拒绝流量的信息类型。
|
action
|
string
|
根据网域和 SNI 信息过滤的流量所执行的操作,可以是 allow 或 deny。安全配置文件定义了此操作。如需详细了解配置的操作,请参阅网址过滤安全配置文件。
|
applicationLayerDetails
|
ApplicationLayerDetails
|
与应用层处理相关的详细信息。 |
sessionLayerDetails
|
SessionLayerDetails
|
与会话层处理相关的详细信息。 |
Connection 字段格式
下表介绍了 Connection 字段的格式。
| 字段 | 类型 | 说明 |
|---|---|---|
clientIp
|
string
|
客户端 IP 地址。如果客户端是 Compute Engine 虚拟机,则 clientIp 是主要内部 IP 地址或虚拟机网络接口的别名 IP 范围内的地址。系统不显示外部 IP 地址。日志显示 IP 标头上观察到的虚拟机实例的 IP 地址,类似于虚拟机实例上的 TCP 转储。 |
clientPort
|
integer
|
客户端端口号。 |
serverIp
|
string
|
服务器 IP 地址。如果服务器是 Compute Engine 虚拟机,则 serverIp 是主要内部 IP 地址或虚拟机网络接口的别名 IP 范围内的地址。即使使用外部 IP 地址进行连接,系统也不会显示此地址。 |
serverPort
|
integer
|
服务器端口号。 |
protocol
|
string
|
连接的 IP 协议。 |
InterceptInstance 字段格式
下表介绍了 InterceptInstance 字段的格式。
| 字段 | 类型 | 说明 |
|---|---|---|
zone
|
string
|
与被拦截流量关联的虚拟机实例所在的可用区的名称。 |
vm
|
string
|
与被拦截流量关联的虚拟机实例的名称。 |
projectId
|
string
|
与被拦截流量关联的 Google Cloud 项目的名称。 |
VpcDetails 字段格式
下表介绍了 VpcDetails 字段的格式。
| 字段 | 类型 | 说明 |
|---|---|---|
vpc
|
string
|
与被拦截流量关联的 VPC 网络的名称。 |
projectId
|
string
|
与 VPC 网络关联的 Google Cloud 项目的名称。 |
SecurityProfileGroupDetails 字段格式
下表介绍了 SecurityProfileGroupDetails 字段的格式。
| 字段 | 类型 | 说明 |
|---|---|---|
securityProfileGroupId
|
string
|
应用于流量的安全配置文件组名称。 |
organizationId
|
string
|
虚拟机实例所属的组织 ID。 |
ApplicationLayerDetails 字段格式
下表介绍了 ApplicationLayerDetails 字段的格式。
| 字段 | 类型 | 说明 |
|---|---|---|
protocol
|
string
|
防火墙端点在应用层使用的协议版本。
|
uri
|
string
|
防火墙端点从流量中读取的网域和子网域信息。 |
SessionLayerDetails 字段格式
下表介绍了 SessionLayerDetails 字段的格式。
| 字段 | 类型 | 说明 |
|---|---|---|
sni
|
string
|
防火墙端点从流量中读取的服务器名称指示 (SNI)。 |
protocolVersion
|
string
|
防火墙端点在会话层使用的协议版本。
|
网址过滤日志与防火墙日志的相关性
当流量被防火墙规则评估时,Cloud NGFW 会记录一条防火墙规则日志记录条目。此条目包含来源 IP 地址、目标 IP 地址和流量检查时间等字段。如需查看这些防火墙规则日志,请参阅查看日志。
如果启用了日志记录,则具有第 7 层检查功能的防火墙政策规则会先记录所评估流量的“防火墙规则日志记录”条目。然后,将流量发送到防火墙端点以进行第 7 层检查。
防火墙端点使用其网域和 SNI 分析流量,并为连接创建单独的网址过滤日志。此网址过滤日志包含域名、流量来源和流量目的地等字段。
如需查看网址过滤日志,请在 Logs Explorer 中搜索日志 networksecurity.googleapis.com/firewall_url_filter。
您可以比较防火墙规则日志和 网址 过滤日志中的字段,以确定触发 网址 过滤的连接,并采取适当措施来解决此问题。
例如,您已配置一条防火墙政策规则,其中包含以下设置:
- 来源 IP 地址:
192.0.2.0 - 来源端口:
47644 - 目的地 IP 地址:
192.0.2.1 - 目标端口:
80 - 日志记录:
Enabled
如需查看与此规则关联的网址过滤日志,请前往 Logs Explorer 页面。在查询窗格中,将以下查询粘贴到查询编辑器字段中。
resource.type="networksecurity.googleapis.com/FirewallEndpoint" jsonPayload.source_ip_address="192.0.2.0" jsonPayload.source_port="47644" jsonPayload.destination_ip_address="192.0.2.1" jsonPayload.destination_port="80"
查询结果部分会显示以下网址过滤日志:
{
"insertId": "akxp8uf5f0fuv",
"jsonPayload": {
"connection": {
"serverPort": 80,
"clientPort": 47644,
"protocol": "TCP",
"clientIp": "192.0.2.0",
"serverIp": "192.0.2.1"
},
"interceptInstance": {
"zone": "us-central1-c",
"vm": "aied-test-dont-delete",
"projectId": "project_001"
},
"detectionTime": "2025-06-02T19:09:27.802711668Z",
"uriMatched": "",
"interceptVpc": {
"projectId": "project_001",
"vpc": "default"
},
"ruleIndex": 0,
"direction": "CLIENT_TO_SERVER",
"@type": "type.googleapis.com/google.cloud.networksecurity.logging.v1.URLFilterLog",
"securityProfileGroupDetails": {
"securityProfileGroupId": "project_001/spg/my-spg-id",
"organizationId": "organization_001"
},
"denyType": "HOST",
"action": "DENY",
"applicationLayerDetails": {
"protocol": "HTTP1",
"uri": "server.fwp.com"
},
"sessionLayerDetails": {
"sni": "",
"protocolVersion": "PROTOCOL_VERSION_UNSPECIFIED"
}
},
"resource": {
"type": "networksecurity.googleapis.com/FirewallEndpoint",
"labels": {
"location": "us-central1-c",
"resource_container": "organizations/organization_001",
"id": "pg-ni-latencyayzl8peq"
}
},
"timestamp": "2025-06-02T19:09:35.452299517Z",
"logName": "projects/project_001/logs/networksecurity.googleapis.com%2Ffirewall_url_filter",
"receiveTimestamp": "2025-06-02T19:09:35.452299517Z"
}
同样,如需查看与此规则关联的防火墙日志,请前往日志浏览器页面。在查询窗格中,将以下查询粘贴到查询编辑器字段中。
jsonPayload.rule_details.action="APPLY_SECURITY_PROFILE_GROUP"
jsonPayload.connection.src_ip="192.0.2.0"
jsonPayload.connection.src_port="47644"
jsonPayload.connection.dest_ip="192.0.2.1"
jsonPayload.connection.dest_port="80"
查询结果部分会显示以下防火墙日志:
{
insertId: "qn82vdg109q3r9"
jsonPayload: {
connection: {
}
dest_ip: "192.0.2.1"
dest_port: 80
protocol: 6
src_ip: "192.0.2.0"
src_port: 47644
disposition: "INTERCEPTED"
►instance: {4}
▸ remote_instance: {4}
▸ remote_vpc: {3}
rule_details: {
action: "APPLY_SECURITY_PROFILE_GROUP"
apply_security_profile_fallback_action: "UNSPECIFIED"
direction: "INGRESS"
▸ ip_port_info: [1]
▼
priority: 6000
reference: "network: fwplus-vpc/firewallPolicy: fwplus-fwpolicy"
source_range: [
1
0: "192.0.2.0/24"
target_secure_tag: [
0: "tagValues/281479199099651"
]
}
vpc: {
project_id: "project_001"
subnetwork_name: "fwplus-us-central1-subnet"
vpc_name: "fwplus-vpc"
}
}
logName: "projects/project_001/logs/compute.googleapis.com%2Ffirewall",
receiveTimestamp: "2023-11-28T19:08:46.749244092Z"
resource: {2}
timestamp: "2023-11-28T19:08:40.207465099Z"
}
通过网址过滤日志和防火墙日志查询,您可以查看它们之间的相关性。下表将防火墙日志字段映射到相应的网址过滤日志字段。
| 防火墙日志字段 | 网址过滤日志字段 | 说明 |
|---|---|---|
src_ip
|
clientIp
|
防火墙日志中的来源 IP 地址与网址过滤日志中的客户端 IP 地址相关联,以确定过滤后流量的来源 |
src_port
|
clientPort
|
防火墙日志中的源端口与网址过滤日志中的客户端端口相关联,以识别过滤后的流量所使用的源端口 |
dest_ip
|
serverIp
|
防火墙日志中的目标 IP 地址与网址过滤日志中的服务器 IP 地址相关联,以精确定位过滤流量的目标 |
dest_port
|
serverPort
|
防火墙日志中的目标端口与网址过滤日志中的服务器端口相关联,以确定过滤后的流量所使用的目标端口 |