网址过滤日志

借助网址过滤服务日志,您可以审核、验证和分析网络中基于网址的流量过滤。

当 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_SERVERSERVER_TO_CLIENT)。
securityProfileGroupDetails SecurityProfileGroupDetails 应用于被拦截流量的安全配置文件组的详细信息。
denyType string 防火墙端点用于拒绝流量的信息类型。
  • SNI:防火墙端点因检测到与 SNI 的匹配项而拒绝了流量。
  • HOST:防火墙端点因检测到与主机标头字段中存在的网域信息相匹配而拒绝了流量。
  • URI:防火墙端点因检测到与 URI 的匹配项而拒绝了流量。
action string 根据网域和 SNI 信息过滤的流量所执行的操作,可以是 allowdeny。安全配置文件定义了此操作。如需详细了解配置的操作,请参阅网址过滤安全配置文件
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 防火墙端点在应用层使用的协议版本。
  • HTTP0:表示 HTTP 版本小于 1。防火墙端点从第一个主机标头字段读取网域信息。
  • HTTP1:表示 HTTP 版本 1.x。防火墙端点从第一个主机标头字段读取网域信息。
  • HTTP2:表示 HTTP 版本 2.x。由于此协议版本的主机标头字段是可选的,因此防火墙端点会从授权伪标头或标头、延续或 push_promise 帧类型的标头块中读取网域信息。
uri string 防火墙端点从流量中读取的网域和子网域信息。

SessionLayerDetails 字段格式

下表介绍了 SessionLayerDetails 字段的格式。

字段 类型 说明
sni string 防火墙端点从流量中读取的服务器名称指示 (SNI)。
protocolVersion string 防火墙端点在会话层使用的协议版本。
  • TLS1_0:表示 TLS 版本 1.0。
  • TLS1_1:表示 TLS 版本 1.1。
  • TLS1_2:表示 TLS 版本 1.2。
  • TLS1_3:表示 TLS 1.3 版。

网址过滤日志与防火墙日志的相关性

当流量由防火墙规则评估时,Cloud NGFW 会记录一条防火墙规则日志记录条目。此条目包含来源 IP 地址、目标 IP 地址和流量检查时间等字段。如需查看这些防火墙规则日志,请参阅查看日志

如果启用了日志记录,则具有第 7 层检查功能的防火墙政策规则会先记录所评估流量的“防火墙规则日志记录”条目。然后,它会将流量发送到防火墙端点以进行第 7 层检查。

防火墙端点使用其网域和 SNI 分析流量,并为连接创建单独的网址过滤日志。此网址过滤日志包含域名、流量来源和流量目的地等字段。

如需查看网址过滤日志,请在日志浏览器中搜索日志 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 防火墙日志中的目标端口与网址过滤日志中的服务器端口相关联,以确定过滤后的流量所使用的目标端口

后续步骤