Logs für URL-Filterung

Mit den Protokollen des URL-Filterdienstes können Sie die URL-basierte Trafficfilterung in Ihrem Netzwerk prüfen, verifizieren und analysieren.

Wenn die Cloud Next Generation Firewall eine URL-basierte Filterung von Traffic mit aktivierter Layer 7-Prüfung durchführt, wird für jede Verbindung ein Logeintrag mit Details zur Verbindung generiert. Cloud NGFW generiert einen Logeintrag, wenn die Firewallregel mit Layer 7-Prüfung aktiviert wird, unabhängig davon, ob Cloud Logging aktiviert oder deaktiviert ist.

Wenn Sie die Logs zur URL-Filterung ansehen und untersuchen möchten, suchen Sie im Log-Explorer nach dem Log networksecurity.googleapis.com/firewall_url_filter.

Auf dieser Seite werden das Format und die Struktur der URL-Filterprotokolle beschrieben, die Cloud NGFW für jede Verbindung generiert, wenn Traffic zugelassen oder abgelehnt wird.

Logformat für URL-Filterung

Cloud NGFW erstellt in Cloud Logging einen Logeintrag für jede Verbindung, die der URL-Filterung unterzogen wird, um den Traffic zu oder von einer VM-Instanz in einer bestimmten Zone zu überwachen. Logeinträge werden im JSON-Nutzlastfeld eines LogEntry erfasst.

Einige Logfelder haben ein Mehrfeldformat mit mehr als einem Datenelement in einem bestimmten Feld. Das Feld connection hat beispielsweise das Format Connection. Dieses Format enthält die Server-IP-Adresse und den Serverport, die Client-IP-Adresse und den Clientport sowie die Protokollnummer in einem einzigen Feld.

In der folgenden Tabelle wird das Format der Logfelder für die URL-Filterung beschrieben.

Feld Typ Beschreibung
connection Connection Ein 5‑Tupel, das die Verbindungsparameter für den Traffic beschreibt, der basierend auf Informationen zu Domain und Server Name Indication (SNI) entweder zugelassen oder abgelehnt wird.
interceptInstance InterceptInstance Die Details der VM-Instanz, in der der Traffic basierend auf Domain- und SNI-Informationen entweder zugelassen oder abgelehnt wird.
detectionTime string Die Uhrzeit (UTC), zu der der Firewall-Endpunkt eine Übereinstimmung für die Domain- und SNI-Informationen erkennt.
uriMatched string Die Domain, für die der Firewall-Endpunkt eine Übereinstimmung erkannt hat.
interceptVpc VpcDetails Die Details des VPC-Netzwerks (Virtual Private Cloud), das der VM-Instanz zugeordnet ist, in der der Traffic basierend auf Domain- und SNI-Informationen entweder zugelassen oder abgelehnt wird.
ruleIndex integer Der Index oder die Ordnungszahl des URL-Filters, mit dem der Firewallendpunkt eine Übereinstimmung erkannt hat.
direction string Die Richtung des Traffics (entweder CLIENT_TO_SERVER oder SERVER_TO_CLIENT), für den der Firewallendpunkt eine Übereinstimmung erkannt hat.
securityProfileGroupDetails SecurityProfileGroupDetails Die Details der Sicherheitsprofilgruppe, die auf den abgefangenen Traffic angewendet wird.
denyType string Der Typ der Informationen, die der Firewall-Endpunkt verwendet, um den Traffic zu verweigern.
  • SNI: Der Firewall-Endpunkt hat Traffic aufgrund einer Übereinstimmung mit einem SNI abgelehnt.
  • HOST: Der Firewall-Endpunkt hat den Traffic abgelehnt, weil eine Übereinstimmung mit den in der Host-Header-Feld vorhandenen Domaininformationen erkannt wurde.
  • URI: Der Firewall-Endpunkt hat den Traffic aufgrund einer Übereinstimmung mit einem URI abgelehnt.
action string Die Aktion, entweder allow oder deny, die für den Traffic ausgeführt wird, der anhand der Domain- und SNI-Informationen gefiltert wird. Diese Aktion wird im Sicherheitsprofil definiert. Weitere Informationen zur konfigurierten Aktion finden Sie unter Sicherheitsprofil für URL-Filterung.
applicationLayerDetails ApplicationLayerDetails Details zur Verarbeitung auf der Anwendungsschicht.
sessionLayerDetails SessionLayerDetails Details zur Verarbeitung der Sitzungsschicht.

Format des Felds Connection

In der folgenden Tabelle wird das Format des Felds Connection beschrieben.

Feld Typ Beschreibung
clientIp string Die IP-Adresse des Clients. Wenn der Client eine Compute Engine-VM ist, ist clientIp entweder die primäre interne IP-Adresse oder eine Adresse in einem Alias-IP-Bereich der Netzwerkschnittstelle einer VM. Die externe IP-Adresse wird nicht angegeben. In den Logs wird die IP-Adresse der VM-Instanz angezeigt, wie sie im IP-Header zu sehen ist, ähnlich wie beim TCP-Dump auf der VM-Instanz.
clientPort integer Die Clientportnummer.
serverIp string Die IP-Adresse des Servers. Wenn die Quelle eine Compute Engine-VM ist, ist serverIp entweder die primäre interne IP-Adresse oder eine Adresse in einem Alias-IP-Bereich der Netzwerkschnittstelle einer VM. Die externe IP-Adresse wird nicht angegeben, auch wenn sie zur Herstellung der Verbindung verwendet wurde.
serverPort integer Die Server-Portnummer.
protocol string Das IP-Protokoll der Verbindung.

Format des Felds InterceptInstance

In der folgenden Tabelle wird das Format des Felds InterceptInstance beschrieben.

Feld Typ Beschreibung
zone string Der Name der Zone, in der sich die VM-Instanz befindet, die dem abgefangenen Traffic zugeordnet ist.
vm string Der Name der VM-Instanz, die mit dem abgefangenen Traffic verknüpft ist.
projectId string Der Name des Google Cloud -Projekts, das mit dem abgefangenen Traffic verknüpft ist.

Format des Felds VpcDetails

In der folgenden Tabelle wird das Format des Felds VpcDetails beschrieben.

Feld Typ Beschreibung
vpc string Der Name des VPC-Netzwerk, das mit dem abgefangenen Traffic verknüpft ist.
projectId string Der Name des Google Cloud Projekts, das dem VPC-Netzwerk zugeordnet ist.

Format des Felds SecurityProfileGroupDetails

In der folgenden Tabelle wird das Format des Felds SecurityProfileGroupDetails beschrieben.

Feld Typ Beschreibung
securityProfileGroupId string Der Name der Sicherheitsprofilgruppe, die auf den Traffic angewendet wird.
organizationId string Die Organisations-ID, zu der die VM-Instanz gehört.

Format des Felds ApplicationLayerDetails

In der folgenden Tabelle wird das Format des Felds ApplicationLayerDetails beschrieben.

Feld Typ Beschreibung
protocol string Die Protokollversion, die der Firewall-Endpunkt auf der Anwendungsschicht verwendet.
  • HTTP0: Gibt eine HTTP-Version unter 1 an. Der Firewall-Endpunkt liest die Domaininformationen aus dem ersten Host-Header-Feld.
  • HTTP1: Gibt die HTTP-Version 1.x an. Der Firewall-Endpunkt liest die Domaininformationen aus dem ersten Host-Header-Feld.
  • HTTP2: Gibt die HTTP-Version 2.x an. Da das Host-Header-Feld für diese Protokollversion optional ist, liest der Firewall-Endpunkt die Domaininformationen entweder aus dem Authority-Pseudokopfzeilenfeld oder aus den Headerblöcken der Frame-Typen „Header“, „Continuation“ oder „Push_Promise“.
uri string Die Domain- und Subdomaininformationen, die der Firewall-Endpunkt aus dem Traffic liest.

Format des Felds SessionLayerDetails

In der folgenden Tabelle wird das Format des Felds SessionLayerDetails beschrieben.

Feld Typ Beschreibung
sni string Die Server Name Indication (SNI), die der Firewall-Endpunkt aus dem Traffic liest.
protocolVersion string Die Protokollversion, die der Firewall-Endpunkt auf der Sitzungsebene verwendet.
  • TLS1_0: Gibt TLS-Version 1.0 an.
  • TLS1_1: Gibt TLS-Version 1.1 an.
  • TLS1_2: Gibt TLS-Version 1.2 an.
  • TLS1_3: Gibt TLS-Version 1.3 an.

Korrelation von URL-Filterlogs mit einem Firewalllog

Wenn Traffic durch eine Firewallregel ausgewertet wird, protokolliert Cloud NGFW einen Eintrag für Logging von Firewallregeln. Dieser Eintrag enthält Felder wie die Quell-IP-Adresse, die Ziel-IP-Adresse und den Zeitpunkt der Traffic-Prüfung. Informationen zum Anzeigen dieser Firewallregel-Logs finden Sie unter Logs ansehen.

Wenn für eine Firewallrichtlinienregel mit Layer-7-Prüfung das Logging aktiviert ist, protokolliert Cloud NGFW zuerst den Eintrag „Firewall Rules Logging“ für den ausgewerteten Traffic. Anschließend wird der Traffic zur Layer-7-Prüfung an den Firewall-Endpunkt gesendet.

Der Firewall-Endpunkt analysiert den Traffic anhand seiner Domain und SNI und erstellt ein separates URL-Filterungsprotokoll für die Verbindung. Dieses URL-Filterungsprotokoll enthält Felder wie den Domainnamen, die Quelle des Traffics und das Ziel des Traffics.

Um die Logs zur URL-Filterung aufzurufen, suchen Sie im Log-Explorer nach dem Log networksecurity.googleapis.com/firewall_url_filter.

Sie können die Felder im Firewallregellog und im URL-Filterlog vergleichen, um die Verbindung zu ermitteln, die das URL-Filtern ausgelöst hat, und entsprechende Maßnahmen zur Behebung des Problems ergreifen.

Angenommen, Sie haben eine Firewallrichtlinienregel mit den folgenden Einstellungen konfiguriert:

  • Quell-IP-Adresse: 192.0.2.0
  • Quellport: 47644
  • Ziel-IP-Adresse: 192.0.2.1
  • Zielport: 80
  • Protokollierung: Enabled

Wenn Sie die mit dieser Regel verknüpften Logs zur URL-Filterung aufrufen möchten, rufen Sie die Seite Log-Explorer auf. Fügen Sie im Bereich Abfrage die folgende Abfrage in das Feld des Abfrageeditors ein.

  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"
  

Im Abschnitt Abfrageergebnisse wird das folgende Log zum Filtern von URLs angezeigt:

    {
      "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"
}
   

Wenn Sie die Firewall-Logs für diese Regel aufrufen möchten, rufen Sie die Seite Log-Explorer auf. Fügen Sie im Bereich Abfrage die folgende Abfrage in das Feld des Abfrageeditors ein.

    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"
   

Im Abschnitt Abfrageergebnisse wird das folgende Firewall-Log angezeigt:

    {
      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"
    }
   

Sowohl mit dem URL-Filterprotokoll als auch mit Firewall-Protokollabfragen können Sie die Korrelation zwischen ihnen sehen. In der folgenden Tabelle werden die Firewall-Logfelder den entsprechenden Logfeldern für die URL-Filterung zugeordnet.

Feld für Firewalllog Logfeld für URL-Filterung Beschreibung
src_ip clientIp Die Quell-IP-Adresse im Firewall-Log wird mit der Client-IP-Adresse im URL-Filter-Log korreliert, um den Ursprung des gefilterten Traffics zu ermitteln.
src_port clientPort Der Quellport im Firewall-Log wird mit dem Clientport im URL-Filter-Log korreliert, um den Quellport zu ermitteln, der vom gefilterten Traffic verwendet wird.
dest_ip serverIp Die Ziel-IP-Adresse im Firewall-Log wird mit der Server-IP-Adresse im URL-Filter-Log korreliert, um das Ziel des gefilterten Traffics zu ermitteln.
dest_port serverPort Der Zielport im Firewall-Log wird mit dem Serverport im URL-Filter-Log korreliert, um den Zielport zu ermitteln, der vom gefilterten Traffic verwendet wird.

Nächste Schritte