Google Security Operations-Forwarder für Windows in Docker

In diesem Dokument wird beschrieben, wie Sie den Google Security Operations-Forwarder für Windows in Docker installieren und konfigurieren.

Systemanforderungen

Im Folgenden finden Sie allgemeine Empfehlungen. Für Empfehlungen speziell für Ihre wenden Sie sich bitte an den Support von Google Security Operations.

  • Windows Server-Version: Die Weiterleitung von Google Security Operations wird unterstützt unter Microsoft Windows Server 2022
  • RAM: 1,5 GB für jeden erfassten Logtyp Beispiel: Endpunkt Detection and Response (EDR), DNS und DHCP sind separate Protokolltypen. Ich 4,5 GB RAM brauchen, um Daten für alle drei zu sammeln. Eine Liste mit Unterstützte Standardparser und Logtypen finden Sie unter Unterstützte Standardparser.
  • CPU: 2 CPUs sind ausreichend,um weniger als 10.000 Ereignisse pro Sekunde zu verarbeiten. (EPS) für alle Datentypen zusammen. Wenn Sie voraussichtlich mehr als 10.000 dann sind 4 bis 6 CPUs erforderlich.
  • Laufwerk: Es sind 100 MB Festplattenspeicher ausreichend, unabhängig von der Datenmenge die Google Security Operations-Weiterleitungen übernimmt. Sie können das Laufwerk zwischenspeichern, indem Sie der Konfigurationsdatei die Parameter write_to_disk_buffer_enabled und write_to_disk_dir_path hinzufügen.

    Beispiel:

    - <collector>:
         common:
             ...
             write_to_disk_buffer_enabled: true
             write_to_disk_dir_path: directory_path 
             ...
    

Google-IP-Adressbereiche

Möglicherweise müssen Sie den IP-Adressbereich öffnen, wenn Sie eine Google Security Operations-Forwarder-Konfiguration einrichten. z. B. bei der Konfiguration der Firewall. Google kann keine spezifische Liste mit IP-Adressen zur Verfügung stellen. Sie können jedoch IP-Adressbereiche von Google abrufen.

Firewallkonfiguration prüfen

Wenn Sie Firewalls oder authentifizierte Proxys zwischen dem Forwarder-Container von Google Security Operations und Internet gibt es Regeln, um den Zugriff auf die folgenden Google Cloud-Hosts zu ermöglichen:

Verbindungstyp Ziel Port
TCP malachiteingestion-pa.googleapis.com 443
TCP asia-northeast1-malachiteingestion-pa.googleapis.com 443
TCP asia-south1-malachiteingestion-pa.googleapis.com 443
TCP asia-southeast1-malachiteingestion-pa.googleapis.com 443
TCP australia-southeast1-malachiteingestion-pa.googleapis.com 443
TCP europe-malachiteingestion-pa.googleapis.com 443
TCP europe-west2-malachiteingestion-pa.googleapis.com 443
TCP europe-west3-malachiteingestion-pa.googleapis.com 443
TCP europe-west6-malachiteingestion-pa.googleapis.com 443
TCP europe-west12-malachiteingestion-pa.googleapis.com 443
TCP me-central1-malachiteingestion-pa.googleapis.com 443
TCP me-central2-malachiteingestion-pa.googleapis.com 443
TCP me-west1-malachiteingestion-pa.googleapis.com 443
TCP northamerica-northeast2-malachiteingestion-pa.googleapis.com 443
TCP accounts.google.com 443
TCP gcr.io 443
TCP oauth2.googleapis.com 443
TCP storage.googleapis.com 443

Mit den folgenden Schritten können Sie die Netzwerkverbindung zu Google Cloud prüfen:

  1. Starten Sie Windows PowerShell mit Administratorberechtigungen. Klicken Sie dazu auf Start, geben Sie PowerShell ein, klicken Sie mit der rechten Maustaste auf Windows PowerShell und klicken Sie dann auf Als Administrator ausführen.

  2. Führen Sie den folgenden Befehl aus:

    C:\> test-netconnection <host> -port <port>

    Der Befehl gibt zurück, dass TcpTestSucceeded true ist.

    Beispiel:

    C:\> test-netconnection malachiteingestion-pa.googleapis.com -port 443
    ComputerName     :  malachiteingestion-pa.googleapis.com
    RemoteAddress    : 198.51.100.1
    RemotePort       : 443
    InterfaceAlias   : Ethernet
    SourceAddress    : 203.0.113.1
    TcpTestSucceeded : True
    

Docker unter Microsoft Windows installieren

In diesem Abschnitt wird beschrieben, wie Sie Docker unter Microsoft Windows mithilfe der Befehlszeile und PowerShell verwenden.

Vorteile des Google Security Operations-Forwarders mit einem Container:

  • Mehr Sicherheit durch Isolation: <ph type="x-smartling-placeholder">
      </ph>
    • Die Kundenumgebung und -anforderungen wirken sich nicht auf Google Security Operations aus. Forwarder.
    • Die Google Security Operations-Forwarder-Umgebung und -Anforderungen haben keinen Einfluss Kundschaft.
    • Der Mechanismus zur Containerverteilung ist bereits vorhanden und kann privat und separat für Google Cloud und die Kunden. Weitere Informationen finden Sie unter Artifact Registry.

Führen Sie auf Microsoft Windows Server Core 2022 die folgenden Schritte aus.

  1. Aktivieren Sie die Funktion für Microsoft Windows-Container.

    Install-WindowsFeature containers -Restart
    
  2. Führen Sie den folgenden Befehl im PowerShell-Administratormodus aus, um die Installation zu starten Docker-CE:

    Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/Windows-Containers/Main/helpful_tools/Install-DockerCE/install-docker-ce.ps1" -o install-docker-ce.ps1
    
    .\install-docker-ce.ps1
    
    
  3. Testen Sie die Docker-Befehlszeilenschnittstelle, indem Sie den Befehl docker ps ausführen. Dadurch wird eine Liste der laufenden Container zurückgegeben. Wenn der Befehl keine ausgeführt werden, ist die Installation erfolgreich. Wenn Docker nicht ordnungsgemäß installiert wurde, wird ein Fehler angezeigt.

    Weitere Informationen finden Sie unter Jetzt starten: Fenster für Container vorbereiten.

    Für Unternehmensbereitstellungen installieren Sie die Mirantis-Containerlaufzeit. auch Docker EE genannt.

Google Security Operations-Forwarder konfigurieren

Informationen zum Konfigurieren des Google Security Operations-Forwarder für Windows in Docker finden Sie unter Weiterleitungskonfigurationen über die Google Security Operations-UI verwalten.

Achten Sie beim Konfigurieren der Google Security Operations-Weiterleitung darauf, dass alle Pfade im Forwarder mit dem Präfix „c:“ beginnen.

Alle Änderungen, die an der Konfigurationsdatei vorgenommen werden, werden innerhalb von 5 Minuten automatisch vom Google Security Operations-Forwarder angewendet.

Paketdaten mit dem Google Security Operations-Forwarder für Windows erfassen Docker erhalten, siehe Paketdaten erfassen

Google Security Operations-Forwarder im Docker-Container ausführen

  1. Wenn Sie ein Upgrade für die Google Security Operations-Weiterleitung durchführen, bereinigen Sie zuerst frühere Docker-Ausführungen. Im folgenden Beispiel wird der Name des Docker-Elements Container ist cfps.

    docker stop cfps
    
    docker rm cfps
    
  2. Neuestes Docker-Image mit diesem Docker-Pull von Google Cloud abrufen .

    docker pull gcr.io/chronicle-container/cf_production_stable_windows
    
  3. Starten Sie den Google Security Operations-Forwarder über den Docker-Container.

    docker run `
    --detach `
    --name cfps `
    --restart=always `
    --log-opt max-size=100m `
    --log-opt max-file=10 `
    -p 10514:10514 `
    -v C:\config\:C:/opt/chronicle/external `
    gcr.io/chronicle-container/cf_production_stable_windows
    

    Sie können mit mehreren Optionen oder Bereichen mehrere Ports hinzufügen. Beispiel: -p 3001:3000 -p 2023:2022 oder -p 7000-8000:7000-8000

Forwarder-Logs ansehen

Führen Sie den folgenden Befehl aus, um die Google Security Operations-Forwarder-Logs aufzurufen:

  sudo docker logs cfps

Führen Sie den folgenden Befehl aus, um den Pfad der Datei anzuzeigen, in der die Logs gespeichert sind:

docker inspect --format='{{.LogPath}}' CONTAINER_NAME
 

Führen Sie den folgenden Befehl aus, um die laufenden Logs anzuzeigen:

  sudo docker logs cfps -f

Führen Sie den folgenden Befehl aus, um die Logs in einer Datei zu speichern:

  sudo docker logs cfps &> logs.txt

Google Security Operations-Forwarder deinstallieren

Mit den folgenden Docker-Befehlen können Sie den Befehl Google Security Operations-Weiterleitung

Mit diesem Befehl wird der Google Security Operations-Forwarder-Container beendet:

  docker stop cfps

Mit diesem Befehl wird der Google Security Operations-Forwarder-Container entfernt:

  docker rm cfps

Google Security Operations-Forwarder aktualisieren

Der Google Security Operations-Forwarder für Windows in Docker wird kontinuierlich mithilfe eines Shell-Skripts im Docker-Image aktualisiert Sie müssen also keine ausführbaren Dateien angeben.

Daten erheben

In den folgenden Abschnitten erfahren Sie, wie Sie den Google Security Operations-Forwarder so konfigurieren, dass verschiedene Datentypen aufgenommen werden. an die Google Security Operations-Instanz weitergeleitet.

Konfigurieren Sie für batch_n_bytes keinen Wert größer als 1 MB. Wenn Sie einen Wert größer als 1 MB konfigurieren, wird der Wert automatisch auf 1 MB zurückgesetzt.

Splunk-Daten erfassen

Sie können den Google Security Operations-Forwarder so konfigurieren, dass Ihre Splunk-Daten an Google Security Operations weitergeleitet werden. Google Cloud konfiguriert den Google Security Operations-Forwarder mit den folgenden Informationen, um Ihre Daten aus Splunk weiterzuleiten:

  • URL für die Splunk REST API, z. B. https://10.0.113.15:8089.

  • Splunk-Abfragen zum Generieren von Daten für jeden der erforderlichen Datentypen (z. B. index=dns).

FORWARDER_NAME.conf
output:
collectors:
  - splunk:
      common:
        enabled: true
        data_type: WINDOWS_DNS
        data_hint: "#fields ts      uid     id.orig_h       id.orig_p       id.resp_h         id.resp_p       proto   trans_id        query   qclass  qclass_name"
        batch_n_seconds: 10
        batch_n_bytes: 819200
      url: https://127.0.0.1:8089
      is_ignore_cert: true
      minimum_window_size: 10s
      maximum_window_size: 30s
      query_string: search index=* sourcetype=dns
      query_mode: realtime
  • Google Security Operations die Anmeldedaten für Ihr Splunk-Konto zur Verfügung stellen Forwarder. Erstellen Sie dazu eine creds.txt-Datei.

So verwenden Sie eine creds.txt-Datei:

  1. Erstellen Sie eine lokale Datei für Ihre Splunk-Anmeldedaten und nennen Sie sie creds.txt.

  2. Geben Sie Ihren Nutzernamen in die erste Zeile und das Passwort in die zweite Zeile ein:

    cat creds.txt
    
    myusername
    mypassword
    
  3. So verwenden Sie die Google Security Operations-Weiterleitung für den Zugriff auf einen Splunk kopieren Sie die Datei creds.txt in das Konfigurationsverzeichnis (die gleiche Verzeichnis, in dem sich die Konfigurationsdateien befinden). Beispiel:

    cp creds.txt c:/opt/chronicle/config/creds.txt
    
  4. Prüfen Sie, ob sich die Datei creds.txt am richtigen Speicherort befindet:

    ls c:/opt/chronicle/config
    

Syslog-Daten erfassen

Der Google Security Operations-Forwarder kann als Syslog-Server verwendet werden. Sie können beliebige Appliance oder Server, der das Senden von Syslog-Daten über TCP oder UDP unterstützt Verbindung, um die Daten an den Google Security Operations-Forwarder weiterzuleiten. Sie können die exakten Daten zu kontrollieren, die die Appliance oder der Server an die Google Security Operations-Weiterleitung Der Google Security Operations-Forwarder an Google Security Operations senden.

Die Konfigurationsdatei FORWARDER_NAME.conf (bereitgestellt von Google Cloud) gibt an, welche Ports für jeden Typ von weitergeleitete Daten (z. B. Port 10514). Standardmäßig werden die Sicherheitsvorgänge von Google Forwarder akzeptiert sowohl TCP- als auch UDP-Verbindungen.

rsyslog konfigurieren

Zum Konfigurieren von rsyslog müssen Sie für jeden Port ein Ziel angeben (z. B. jedem Datentyp). Die korrekte Syntax finden Sie in der Systemdokumentation. Die Die folgenden Beispiele veranschaulichen die rsyslog-Zielkonfiguration:

  • TCP-Log-Traffic: dns.* @@192.168.0.12:10514

  • UDP-Log-Traffic: dns.* @192.168.0.12:10514

TLS für Syslog-Konfigurationen aktivieren

Sie können TLS für die Syslog-Verbindung zu Google Security Operations aktivieren Forwarder. In der Konfigurationsdatei des Google Security Operations-Forwarder (FORWARDER_NAME.conf), geben Sie Ihren eigenen Standort an generiertes Zertifikat und Zertifikatschlüssel, wie im folgenden Beispiel gezeigt:

Zertifikat c:/opt/chronicle/external/certs/client_generated_cert.pem
certificate_key c:/opt/chronicle/external/certs/client_generated_cert.key

Basierend auf dem gezeigten Beispiel den Google Security Operations-Forwarder ändern Konfigurationsdatei (FORWARDER_NAME.conf) so:

  collectors:
- syslog:
    common:
      enabled: true
      data_type: WINDOWS_DNS
      data_hint:
      batch_n_seconds: 10
      batch_n_bytes: 1048576
    tcp_address: 0.0.0.0:10515
    tcp_buffer_size: 65536
    connection_timeout_sec: 60
    certificate: "c:/opt/chronicle/external/certs/client_generated_cert.pem"
    certificate_key: "c:/opt/chronicle/external/certs/client_generated_cert.key"
    minimum_tls_version: "TLSv1_3"

Einige wichtige Punkte, die Sie beachten sollten:

  • Sie können die Größe des TCP-Zwischenspeichers konfigurieren. Die Standardgröße des TCP-Zwischenspeichers 64 KB groß.

  • Der empfohlene Standardwert für connection_timeout beträgt 60 Sekunden. Ist die Verbindung über einen bestimmten Zeitraum inaktiv, wird die TCP-Verbindung beendet.

  • Die TLS-Mindestversion wird mit der TLS-Version des Eingabeanfrage. Die TLS-Version der Eingabeanfrage muss größer als sein als die Mindestversion für TLS. Die TLS-Mindestversion sollte eine der folgenden folgende Werte: TLSv1_0, TLSv1_1, TLSv1_2, TLSv1_3.

Sie können unter dem Konfigurationsverzeichnis ein certs-Verzeichnis erstellen und die Zertifikatsdateien hinzufügen.

Dateidaten erfassen

Ein File Collector ist so konzipiert, dass die Protokolle aus einer Datei abgerufen werden. Die Datei sollte die an den Docker-Container gebunden sind.

Verwenden Sie diese Option, wenn Sie Protokolle manuell aus einer einzelnen Protokolldatei hochladen möchten. Dies kann kann für einen Backfill von Logs für eine bestimmte Logdatei verwendet werden.

Starten Sie den Google Security Operations-Forwarder vom Docker-Container aus:

  docker run `
    --name cfps `
    --log-opt max-size=100m `
    --log-opt max-file=10 `
    -p 10514:10514 `
    -v c:/opt/chronicle/config:c:/opt/chronicle/external `
    -v c:/var/log/crowdstrike/falconhoseclient:c:/opt/chronicle/edr `
     gcr.io/chronicle-container/cf_production_stable

Sie können mit mehreren Optionen oder Bereichen mehrere Ports hinzufügen. Beispiel: -p 3001:3000 -p 2023:2022 oder -p 7000-8000:7000-8000

Dieser docker run-Befehl ist wichtig, um dem Container das Ladevolumen zuzuordnen.

In diesem Beispiel sollten Sie den Google Security Operations-Forwarder ändern Konfiguration (FORWARDER_NAME.conf-Datei) so. Die Datei sample.txt sollte im /var/log/crowdstrike/falconhostclient-Ordner.

 collectors:
  - file:
       common:
         enabled: true
         data_type: CS_EDR
         data_hint:
         batch_n_seconds: 10
         batch_n_bytes: 1048576
       file_path: c:/opt/chronicle/edr/output/sample.txt
       filter:

Flag-Konfigurationen

skip_seek_to_end (bool): Dieses Flag ist standardmäßig auf false gesetzt und die Datei "input" sendet nur neue Protokollzeilen als Eingabe. Die Einstellung true führt dazu, dass alle Vorherige Protokollzeilen werden bei Forwarder-Neustarts noch einmal gesendet. Dies führt zu einem Logeintrag. Duplikation. Das Festlegen dieses Flags auf true ist in bestimmten (z. B. bei Ausfällen), da ein Neustart des Forwarders fehlen wieder Log-Zeilen.

poll (bool): Datei-Collector verwendet die Tail-Bibliothek, um nach Änderungen in im Dateisystem. Wenn Sie dieses Flag auf true setzen, verwendet die Tail-Bibliothek die Abfrage anstelle der standardmäßigen Benachrichtigungsmethode.

Paketdaten erfassen

Der Google Security Operations-Forwarder kann mithilfe von Npcap auf Windows-Systemen Pakete direkt von einer Netzwerkschnittstelle erfassen.

Pakete werden anstelle von Logeinträgen erfasst und an Google Cloud gesendet. Die Erfassung erfolgt nur über eine lokale Schnittstelle.

Wenden Sie sich an den Support von Google Security Operations, um Ihre Konfigurationsdatei für den Google Security Operations-Forwarder so zu aktualisieren, dass die Paketerfassung unterstützt wird.

Zum Ausführen eines PCAP-Forwarders (Packet Capture) benötigen Sie Folgendes:

  • Installieren Sie Npcap auf dem Microsoft Windows-Host.

  • Gewähren Sie dem Google Security Operations-Forwarder-Stamm- oder Administratorberechtigungen zum Überwachen der Netzwerkschnittstelle.

  • Befehlszeilenoptionen sind nicht erforderlich.

  • Aktivieren Sie bei der Npcap-Installation den WinPcap-Kompatibilitätsmodus.

Zum Konfigurieren eines PCAP-Forwarders benötigt Google Cloud die GUID für die Schnittstelle, die zum Erfassen von Paketen verwendet wird. Führen Sie getmac.exe auf dem Computer aus, auf dem Sie die Google Security Operations-Weiterleitung installieren möchten. (entweder dem Server oder der Maschine, die den Span-Port überwacht) und sendet die Ausgabe an Google Security Operations.

Alternativ können Sie die Konfigurationsdatei ändern. Suchen Sie den Abschnitt PCAP und Ersetzen Sie den neben "Interface" angezeigten GUID-Wert durch die aus der Ausführung von getmac.exe angezeigte GUID.

Hier ist als Beispiel ein Original-PCAP-Abschnitt:

- pcap:
      common:
        enabled: true
        data_type: PCAP_DNS
        batch_n_seconds: 10
        batch_n_bytes: 1048576
      interface: \Device\NPF_{1A7E7C8B-DD7B-4E13-9637-0437AB1A12FE}
      bpf: udp port 53

Dies ist die Ausgabe nach Ausführung von getmac.exe:

C:\>getmac.exe
  Physical Address    Transport Name
  ===========================================================================
  A4-73-9F-ED-E1-82   \Device\Tcpip_{2E0E9440-ABFF-4E5B-B43C-E188FCAD1234}

Und hier ist der überarbeitete PCAP-Abschnitt mit der neuen GUID:

- pcap:
      common:
        enabled: true
        data_type: PCAP_DNS
        batch_n_seconds: 10
        batch_n_bytes: 1048576
      interface: \Device\NPF_{2E0E9440-ABFF-4E5B-B43C-E188FCAD9734}
      bpf: udp port 53

Daten aus Kafka-Thema erfassen

Sie können Daten aus den Kafka-Themen genau wie aus Syslog aufnehmen. Die Nutzergruppen werden verwendet, damit Sie bis zu drei Google Security Operations-Forwarder und Daten aus demselben Kafka-Thema abzurufen. Weitere Informationen finden Sie unter Kafka:

Weitere Informationen zu Kafka-Nutzergruppen

Beispielkonfiguration: Kafka-Eingabe

Die folgende Konfiguration des Google Security Operations-Forwarder zeigt, wie die Google Security Operations-Weiterleitung für die Aufnahme eingerichtet wird Daten aus den Kafka-Themen.

Datei FORWARDER_NAME.conf

collectors:
- kafka:
      common:
        batch_n_bytes: 1048576
        batch_n_seconds: 10
        data_hint: null
        data_type: NIX_SYSTEM
        enabled: true
      topic: example-topic
      group_id: chronicle-forwarder
      timeout: 60s
      brokers: ["broker-1:9092", "broker-2:9093"]
      tls:
        insecureSkipVerify: true
        certificate: "c:/path/to/cert.pem"
        certificate_key: "c:/path/to/cert.key"
- syslog:
      common:
        batch_n_bytes: 1048576
        batch_n_seconds: 10
        data_hint: null
        data_type: WINEVTLOG
        enabled: true
      tcp_address: 0.0.0.0:30001
      connection_timeout_sec: 60

Datei FORWARDER_NAME_auth.conf

collectors:
- kafka:
      username: user
      password: password
- syslog:

WebProxy-Daten erfassen

Der Google Security Operations-Forwarder kann WebProxy-Daten direkt aus einem Netzwerk erfassen mit npcap an Google Cloud senden.

Wenn Sie die WebProxy-Datenerfassung für Ihr System aktivieren möchten, wenden Sie sich an den Support von Google Security Operations.

Führen Sie die folgenden Schritte aus, bevor Sie einen WebProxy-Forwarder ausführen:

  1. Installieren Sie Npcap auf dem Microsoft Windows-Host. WinPcap-Kompatibilität aktivieren während der Installation ändern.

  2. Dem Google Security Operations-Forwarder Root- oder Administratorberechtigungen gewähren um die Netzwerkschnittstelle zu überwachen.

  3. Zum Konfigurieren eines WebProxy-Forwarders benötigt Google Cloud die GUID für die zum Erfassen der WebProxy-Pakete.

    Führen Sie getmac.exe auf dem Computer aus, auf dem Sie Google Security Operations installieren möchten Forwarder und sendet die Ausgabe an Google Security Operations. Alternativ können Sie die Konfigurationsdatei ändern. Suchen Sie den WebProxy-Abschnitt und ersetzen Sie die GUID wird neben der Schnittstelle mit der GUID angezeigt, nachdem getmac.exe ausgeführt wurde.

    Konfiguration der Google Security Operations-Weiterleitung ändern (FORWARDER_NAME.conf) wie folgt:

      - webproxy:
        common:
            enabled : true
            data_type: <Your LogType>
            batch_n_seconds: 10
            batch_n_bytes: 1048576
          interface: \Device\NPF_{2E0E9440-ABFF-4E5B-B43C-E188FCAD9734}
          bpf: tcp and dst port 80
    

Konfigurationen anpassen

In der folgenden Tabelle sind wichtige Parameter aufgeführt, die in der Konfigurationsdatei des Forwarders verwendet werden.

Parameter Beschreibung
data_type Die Art der Logdaten, die der Collector erfassen und verarbeiten kann.
Metadaten Metadaten, die globale Metadaten überschreiben.
max_file_buffer_bytes Maximale Anzahl von Byte, die im Laufwerk oder Dateizwischenspeicher akkumuliert werden können. Der Standardwert ist 1073741824, also 1 GB.
max_memory_buffer_bytes Maximale Anzahl von Byte, die im Zwischenspeicher des Arbeitsspeichers akkumuliert werden können. Die Der Standardwert ist 1073741824, also 1 GB.
write_to_disk_dir_path Der für den Datei- oder Laufwerkzwischenspeicher zu verwendende Pfad.
write_to_disk_buffer_enabled Wenn true, wird der Laufwerkzwischenspeicher anstelle des Arbeitsspeicherpuffers verwendet. Der Standardwert ist false.
batch_n_bytes Maximale Anzahl von Byte, die vom Collector akkumuliert werden können, nachdem bei dem die Daten in Batches zusammengefasst werden. Der Standardwert ist 1048576, also 1 MB.
batch_n_seconds Die Anzahl der Sekunden, nach denen die vom Collector erfassten Daten in Batches zusammengefasst werden. Der Standardwert ist 11 Sekunden.
data_hint Datenformat, das der Collector empfangen kann (normalerweise der Header der Protokolldatei, der das Format beschreibt).

Eine ausführliche Liste der in der Konfigurationsdatei verwendeten Parameter finden Sie unter Felder für die Weiterleitungskonfiguration und Collector-Konfigurationsfelder.

Datenkomprimierung aktivieren/deaktivieren

Die Logkomprimierung reduziert den Verbrauch der Netzwerkbandbreite beim Übertragen von Logs an Google Security Operations Die Komprimierung kann jedoch zu einer erhöhten CPU-Auslastung führen. Der Kompromiss zwischen CPU-Nutzung und Bandbreite hängt von vielen Faktoren ab, die Art der Logdaten, die Komprimierbarkeit dieser Daten, die Verfügbarkeit Zyklen auf dem Host, auf dem der Google Security Operations-Forwarder ausgeführt wird, und die Notwendigkeit einer Reduzierung des Netzwerkverkehrs Bandbreitenverbrauch.

Textbasierte Logs werden beispielsweise gut komprimiert und können eine erhebliche Bandbreite bieten Kosteneinsparungen bei geringer CPU-Auslastung. Verschlüsselte Nutzlasten von Rohpaketen und eine höhere CPU-Auslastung führen.

Standardmäßig ist die Protokollkomprimierung deaktiviert. Das Aktivieren der Protokollkomprimierung kann den Bandbreitenverbrauch reduzieren. Das Aktivieren der Protokollkomprimierung kann aber auch die CPU-Auslastung erhöhen. Seien Sie sich des Kompromisses bewusst.

Um die Protokollkomprimierung zu aktivieren, setzen Sie das Feld compression auf true in der Konfigurationsdatei des Google Security Operations-Forwarder als Beispiel:

Datei FORWARDER_NAME.conf

output:
  compression: true
    url: malachiteingestion-pa.googleapis.com:443
    identity:
      identity:
      collector_id: 10479925-878c-11e7-9421-10604b7cb5c1
      customer_id: ebdc4bb9-878b-11e7-8455-10604b7cb5c1
...

Datei FORWARDER_NAME_auth.conf

output:
  identity:
    secret_key: |
    {
     "type": "service_account",
...
    }

Laufwerkszwischenspeicherung konfigurieren

Mit der Laufwerkszwischenspeicherung können Sie Backlog-Nachrichten auf dem Laufwerk zwischenspeichern, zu speichern. Die im Rückstand befindlichen Nachrichten können gespeichert werden, falls der Google Security Operations-Forwarder abstürzt oder Abstürze des zugrunde liegenden Hosts. Das Aktivieren der Zwischenspeicherung des Laufwerks kann sich auf die Leistung.

Wenn die Laufwerkszwischenspeicherung deaktiviert ist, verwendet der Google Security Operations-Forwarder jeweils 1 GB Arbeitsspeicher (RAM) Protokolltyp (z. B. für jeden Connector). max_memory_buffer_bytes angeben Konfigurationsparameter. Der maximal zulässige Arbeitsspeicher beträgt 4 GB.

Sie können die automatische Zwischenspeicherung des Laufwerks so konfigurieren, dass ein dynamisch gemeinsamer Zwischenspeicher verwendet wird. die besser mit Zugriffsspitzen umgehen können. Um die Funktion gemeinsam genutzten Zwischenspeichers verwenden, fügen Sie Folgendes in die Forwarder-Konfiguration ein:

auto_buffer:
  enabled: true
  target_memory_utilization: 80

Wenn die automatische Laufwerkzwischenspeicherung aktiviert ist, target_memory_utilization ist nicht definiert. Es wird ein Standardwert verwendet. von 70.

Wenn Sie den Google Security Operations-Forwarder mit Docker ausführen, empfiehlt Google das Bereitstellen einer vom Konfigurations-Volume getrennt. Außerdem Jede Eingabe sollte mit einem eigenen Verzeichnis oder Volume isoliert werden, um Konflikten.

Beispielkonfiguration: Laufwerkzwischenspeicherung

Die folgende Konfiguration enthält eine Syntax zum Aktivieren der Zwischenspeicherung des Laufwerks:

collectors:
- syslog:
    common:
      write_to_disk_buffer_enabled: true
      # c:/buffers/NIX_SYSTEM is part of the external mounted volume for the
forwarder
      write_to_disk_dir_path: c:/buffers/NIX_SYSTEM
      max_file_buffer_bytes: 1073741824
      batch_n_bytes: 1048576
      batch_n_seconds: 10
      data_hint: null
      data_type: NIX_SYSTEM
      enabled: true
    tcp_address: 0.0.0.0:30000
    connection_timeout_sec: 60
- syslog:
    common:
      batch_n_bytes: 1048576
      batch_n_seconds: 10
      data_hint: null
      data_type: WINEVTLOG
      enabled: true
    tcp_address: 0.0.0.0:30001
    connection_timeout_sec: 60

Filter für reguläre Ausdrücke festlegen

Mit Filtern für reguläre Ausdrücke können Sie Logs anhand von regulären Ausdrücken filtern Übereinstimmungen mit Rohprotokollen.

Die Filter verwenden die RE2-Syntax.

Die Filter müssen einen regulären Ausdruck enthalten und optional ein Verhalten definieren wenn es eine Übereinstimmung gibt. Das Standardverhalten bei einer Übereinstimmung ist „Sperren“. Sie können auch explizit als Block konfigurieren).

Alternativ können Sie Filter mit dem Verhalten allow angeben. Wenn Sie allow-Filter blockiert, blockiert der Google Security Operations-Forwarder alle Logs, die nicht mit mindestens einem übereinstimmen Filter „allow“.

Es ist möglich, eine beliebige Anzahl von Filtern zu definieren. Blockfilter können Vorrang vor allow-Filtern.

Wenn Sie Filter definieren, muss ihnen ein Name zugewiesen werden. Die Namen der aktiven Filter werden mithilfe von Forwarder-Zustandsmesswerten an Google Security Operations gemeldet. Filter die im Stammverzeichnis der Konfiguration definiert sind, mit den auf der gesammelt werden. Die Filter auf Collector-Ebene haben in den folgenden Fällen Vorrang: widersprüchlichen Namen. Wenn keine Filter im Stammverzeichnis oder in Collector definiert sind werden alle zugelassen.

Beispielkonfiguration: Filter für reguläre Ausdrücke

In der folgenden Google Security Operations-Forwarder-Konfiguration protokolliert WINEVTLOG Folgendes: die nicht mit dem Stammfilter (allow_filter) übereinstimmen, werden blockiert. In Anbetracht der regulären lässt der Filter nur Logs mit Prioritäten zwischen 0 und 99 zu. Alle NIX_SYSTEM-Logs, die „foo“ enthalten, oder "bar" blockiert sind, trotz allow_filter. Das liegt daran, dass die Filter ein logisches ODER verwenden. Alle Protokolle werden verarbeitet, bis ein Filter ausgelöst wird.

regex_filters:
  allow_filter:
    regexp: ^<[1-9][0-9]?$>.*$
    behavior_on_match: allow
collectors:
- syslog:
    common:
      regex_filters:
        block_filter_1:
          regexp: ^.*foo.*$
          behavior_on_match: block
        block_filter_2:
          regexp: ^.*bar.*$
      batch_n_bytes: 1048576
      batch_n_seconds: 10
      data_hint: null
      data_type: NIX_SYSTEM
      enabled: true
    tcp_address: 0.0.0.0:30000
    connection_timeout_sec: 60
- syslog:
    common:
      batch_n_bytes: 1048576
      batch_n_seconds: 10
      data_hint: null
      data_type: WINEVTLOG
      enabled: true
    tcp_address: 0.0.0.0:30001
    connection_timeout_sec: 60

Beliebige Labels konfigurieren

Mit Labels können beliebige Metadaten mithilfe von Schlüssel/Wert-Paaren an Logs angehängt werden. Labels können für einen gesamten Google Security Operations-Forwarder oder innerhalb eines bestimmten Collectors konfiguriert werden Google Security Operations-Forwarder. Wenn beide angegeben sind, werden die Labels mit den Labels des Collectors zusammengeführt. Vorrang vor den Google Security Operations-Forwarder-Schlüsseln, wenn sich die Schlüssel überschneiden.

Beispielkonfiguration: beliebige Labels

In der folgenden Google Security Operations-Forwarder-Konfiguration werden die Schlüssel foo=bar und meow=mix sowie Wertpaare sind beide an WINEVTLOG-Logs angehängt, und die Werte foo=baz und meow=mix-Schlüssel/Wert-Paare sind an die NIX_SYSTEM-Logs angehängt.

metadata:
  labels:
    foo: bar
    meow: mix
collectors:
syslog:
    common:
      metadata:
        labels:
          foo: baz
          meow: mix
      batch_n_bytes: 1048576
      batch_n_seconds: 10
      data_hint: null
      data_type: NIX_SYSTEM
      enabled: true
    tcp_address: 0.0.0.0:30000
    connection_timeout_sec: 60
syslog:
    common:
      batch_n_bytes: 1048576
      batch_n_seconds: 10
      data_hint: null
      data_type: WINEVTLOG
      enabled: true
    tcp_address: 0.0.0.0:30001
    connection_timeout_sec: 60

Namespaces konfigurieren

Verwenden Sie Namespace-Labels, um Logs von verschiedenen Netzwerksegmenten zu identifizieren und Konflikte zwischen sich überschneidenden IP-Adressen zu beseitigen. Sie können ein Namespace-Label für ein den gesamten Google Security Operations-Forwarder oder einen bestimmten Collector des Google Security Operations-Forwarders an. Wenn beide enthalten ist, hat der Namespace des jeweiligen Collectors Vorrang.

Jeder für den Google Security Operations-Forwarder konfigurierte Namespace wird mit den zugehörigen Assets in der Google Security Operations-Benutzeroberfläche. Sie können auch mithilfe der Methode Google Security Operations Search-Funktion.

Informationen zum Aufrufen von Namespaces in der Google Security Operations-Benutzeroberfläche Weitere Informationen

Beispielkonfiguration: Namespaces

In der folgenden Google Security Operations-Forwarder-Konfiguration sind die WINEVTLOG-Logs an den FORWARDER-Namespace angehängt sind, und NIX_SYSTEM-Logs sind an den CORPORATE-Namespace angehängt ist.

metadata:
  namespace: FORWARDER
collectors:
- syslog:
      common:
        metadata:
          namespace: CORPORATE
        batch_n_bytes: 1048576
        batch_n_seconds: 10
        data_hint: null
        data_type: NIX_SYSTEM
        enabled: true
      tcp_address: 0.0.0.0:30000
      connection_timeout_sec: 60
- syslog:
      common:
        batch_n_bytes: 1048576
        batch_n_seconds: 10
        data_hint: null
        data_type: WINEVTLOG
        enabled: true
      tcp_address: 0.0.0.0:30001
      connection_timeout_sec: 60

Load-Balancing- und Hochverfügbarkeitsoptionen konfigurieren

Der Google Security Operations-Forwarder für Windows in Docker kann in einer Umgebung bereitgestellt werden Ein Layer-4-Load-Balancer ist zwischen der Datenquelle und dem Google Security Operations-Forwarder installiert Instanzen. So können Sie die Logsammlung mehrere Google Security Operations-Forwarder senden oder Protokolle an einen anderen Google Security Operations-Forwarder senden, wenn bei einem Fehler ein Fehler auftritt. Dieses wird nur mit dem Sammlungstyp „syslog“ unterstützt.

Die Google Security Operations-Weiterleitung für Windows in Docker umfasst einen integrierten HTTP-Server, der auf HTTP-Zustand reagiert und Prüfungen vom Load-Balancer. Der HTTP-Server sorgt auch dafür, dass die Protokolle nicht beim Starten oder Herunterfahren eines Google Security Operations-Forwarders verloren geht.

HTTP-Server, Load-Balancing und Hochverfügbarkeitsoptionen konfigurieren im Abschnitt server der Konfigurationsdatei für die Google Security Operations-Weiterleitung. Diese Optionen das Festlegen von Zeitüberschreitungen und Statuscodes, die als Antwort auf In Container-Planer und orchestrierungsbasierte empfangene Systemdiagnosen Bereitstellungen sowie von herkömmlichen Lastenausgleichsmodulen.

Verwenden Sie die folgenden URL-Pfade für Zustands-, Bereitschafts- und Aktivitätsprüfungen. Die <host:port>-Werte sind in der Google Security Operations-Forwarder-Konfiguration definiert.

  • http://<host:port>/meta/available: Aktivitätsprüfungen für Container Planer/Orchestratoren wie Kubernetes.
  • http://<host:port>/meta/ready: Bereitschaftsprüfungen und herkömmliche Last Systemdiagnosen des Load-Balancers.

Die folgende Google Security Operations-Forwarder-Konfiguration ist ein Beispiel für Load-Balancing und hohe Verfügbarkeit:

collectors:
- syslog:
    common:
      batch_n_bytes: 1048576
      batch_n_seconds: 10
      data_hint: null
      data_type: NIX_SYSTEM
      enabled: true
    tcp_address: 0.0.0.0:30000
    connection_timeout_sec: 60
- syslog:
    common:
      batch_n_bytes: 1048576
      batch_n_seconds: 10
      data_hint: null
      data_type: WINEVTLOG
      enabled: true
    tcp_address: 0.0.0.0:30001
    connection_timeout_sec: 60
server:
  graceful_timeout: 15s
  drain_timeout: 10s
  http:
    port: 8080
    host: 0.0.0.0
    read_timeout: 3s
    read_header_timeout: 3s
    write_timeout: 3s
    idle_timeout: 3s
    routes:
    - meta:
        available_status: 204
        ready_status: 204
        unready_status: 503
Konfigurationspfad Beschreibung
Server : Graceful_timeout Die Zeitspanne, in der der Google Security Operations-Forwarder eine schlechte Bereitschafts-/Systemdiagnose und nimmt weiterhin neue Verbindungen an. Dies ist auch die Zeit, zwischen das Signal empfangen, um das Herunterfahren des Geräts zu starten Server selbst. Dadurch hat der Load-Balancer Zeit, die Google Security Operations-Weiterleitung zu entfernen. aus dem Pool.
Server : Drain_timeout Die Zeit, die der Google Security Operations-Forwarder auf aktive Verbindungen wartet, um von selbst schließen, bevor sie vom Server geschlossen werden.
Server : http : Port Die Portnummer, die der HTTP-Server auf Systemdiagnosen des Load-Balancer. Muss zwischen 1024 und 65535 liegen.
Server : http : Host Die IP-Adresse oder der Hostname, der in IP-Adressen aufgelöst werden kann, die der den Server überwachen soll. Wenn das Feld leer ist, wird als Standardwert „Lokales System“ verwendet (0.0.0.0)
Server : http : read_timeout Wird zum Abstimmen des HTTP-Servers verwendet. Muss in der Regel nicht von Standardeinstellung. Die maximal zulässige Zeit zum Lesen des gesamten -Anfrage sowohl im Header als auch im Textkörper. Sie können sowohl read_timeout read_header_timeout.
Server : http : read_header_timeout Wird zum Abstimmen des HTTP-Servers verwendet. Muss in der Regel nicht von Standardeinstellung. Die maximal zulässige Zeit zum Lesen der Anfrage headers. Die Verbindung hat gelesen, dass das Zeitlimit nach dem Lesen der Header.
Server : http : write_timeout Wird zum Abstimmen des HTTP-Servers verwendet. Muss in der Regel nicht von Standardeinstellung. Die maximal zulässige Zeit zum Senden einer Antwort. Er wird zurückgesetzt, wenn ein neuer Anfrageheader gelesen wird.
Server : http : Idle_timeout Wird zum Abstimmen des HTTP-Servers verwendet. Muss in der Regel nicht von Standardeinstellung. Die maximale Wartezeit auf den nächsten -Anfrage, wenn inaktive Verbindungen aktiviert sind. Wenn „idle_timeout“ null ist, wird der Wert von read_timeout verwendet. Wenn beide null sind, ist der read_header_timeout verwendet.
route : meta : ready_status Der Statuscode, den der Google Security Operations-Forwarder zurückgibt, wenn er zur Annahme des Traffics bereit ist in einer der folgenden Situationen:
<ph type="x-smartling-placeholder">
    </ph>
  • Die Bereitschaftsprüfung wird von einem Container-Planer oder wie Kubernetes.
  • Die Systemdiagnose wird von einem herkömmlichen Load-Balancer empfangen.
Routen : meta : ungeleseny_status Der Statuscode, den der Google Security Operations-Forwarder zurückgibt, wenn er nicht akzeptiert werden kann Zugriffe.
Routen : meta : available_status Der Statuscode, den der Google Security Operations-Forwarder zurückgibt, wenn eine Aktivitätsprüfung empfangen wird und der Google Security Operations-Forwarder ist verfügbar. Containerplaner/-orchestratoren wie Kubernetes sendet häufig Aktivitätsprüfungen.