F5 DNS-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie F5 DNS-Logs mit Bindplane in Google Security Operations aufnehmen. Der Parser extrahiert Felder aus F5 DNS-Syslog-Nachrichten mithilfe von Grok-Mustern basierend auf dem Anwendungsfeld und ordnet sie dann dem einheitlichen Datenmodell (Unified Data Model, UDM) zu. Es verarbeitet verschiedene F5-Anwendungen wie gtmd, mcpd, big3d und andere, parst bestimmte Felder und legt den entsprechenden UDM-Ereignistyp, die Schwere und die Beschreibungen basierend auf der Protokollebene und der Anwendung fest.

Hinweise

Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:

  • Eine Google SecOps-Instanz
  • Ein Windows-Host mit Windows 2016 oder höher oder ein Linux-Host mit systemd
  • Wenn die Ausführung hinter einem Proxy erfolgt, sind die Firewallports geöffnet.
  • Zugriffsrechte für F5 BIG-IP

Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Aufnahme herunter. Speichern Sie die Datei sicher auf dem System, auf dem BindPlane installiert wird.

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > „Profil“ auf.
  3. Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

Installieren Sie den Bindplane-Agent auf Ihrem Windows- oder Linux-Betriebssystem gemäß der folgenden Anleitung.

Fenstereinbau

  1. Öffnen Sie die Eingabeaufforderung oder PowerShell als Administrator.
  2. Führen Sie dazu diesen Befehl aus:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Linux-Installation

  1. Öffnen Sie ein Terminal mit Root- oder Sudo-Berechtigungen.
  2. Führen Sie dazu diesen Befehl aus:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Zusätzliche Installationsressourcen

Weitere Installationsoptionen finden Sie in der Installationsanleitung.

BindPlane-Agent zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren

  1. Rufen Sie die Konfigurationsdatei auf:
    • Suchen Sie die Datei config.yaml. Normalerweise befindet sie sich unter Linux im Verzeichnis /etc/bindplane-agent/ oder unter Windows im Installationsverzeichnis.
    • Öffnen Sie die Datei mit einem Texteditor (z. B. nano, vi oder Notepad).
  2. Bearbeiten Sie die Datei config.yamlso:

    receivers:
        udplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds_file_path: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            log_type: 'F5_DNS'
            raw_log_field: body
            ingestion_labels:
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
    • Ersetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.
    • Ersetzen Sie <customer_id> durch die tatsächliche Kunden-ID.
    • Aktualisieren Sie /path/to/ingestion-authentication-file.json auf den Pfad, in dem die Authentifizierungsdatei im Abschnitt Authentifizierungsdatei für die Google SecOps-Aufnahme abrufen gespeichert wurde.

Bindplane-Agent neu starten, um die Änderungen zu übernehmen

  • Führen Sie den folgenden Befehl aus, um den Bindplane-Agent unter Linux neu zu starten:

    sudo systemctl restart bindplane-agent
    
  • Wenn Sie den Bindplane-Agent unter Windows neu starten möchten, können Sie entweder die Konsole Dienste verwenden oder den folgenden Befehl eingeben:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Pool von Remote-Logging-Servern konfigurieren

  1. Melden Sie sich in der Weboberfläche von F5 BIG-IP an.
  2. Rufen Sie auf dem Tab Main (Haupt) DNS > Delivery > Load Balancing > Pools oder Local Traffic > Pools auf.
  3. Klicken Sie auf Erstellen.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Name: Geben Sie einen eindeutigen Namen für den Pool ein.
    • Einstellung Neue Mitglieder verwenden:
      • Geben Sie die IP-Adresse des Bindplane-Agents in das Feld Adresse ein.
      • Geben Sie im Feld Serviceport die Portnummer des Bindplane-Agents ein.
  5. Klicken Sie auf Hinzufügen> Fertig.

Remote-Logziel konfigurieren

  1. Gehen Sie auf dem Tab Main (Haupt) zu System > Logs > Configuration > Log Destinations (System > Protokolle > Konfiguration > Protokollziele).
  2. Klicken Sie auf Erstellen.
  3. Geben Sie die folgenden Konfigurationsdetails an:
    • Name: Geben Sie einen eindeutigen Namen für dieses Ziel ein.
    • Typ: Wählen Sie Remote High-Speed Log aus.
    • Pool Name (Poolname): Wählen Sie den Pool von Remote-Log-Servern aus, an den das BIG-IP-System Log-Meldungen senden soll.
    • Protokoll: Wählen Sie das verwendete Protokoll aus.
  4. Klicken Sie auf Fertig.

Formatiertes Remote-Logziel erstellen

  1. Gehen Sie auf dem Tab Main (Haupt) zu System > Logs > Configuration > Log Destinations (System > Protokolle > Konfiguration > Protokollziele).
  2. Klicken Sie auf Erstellen.
  3. Geben Sie die folgenden Konfigurationsdetails an:
    • Name: Geben Sie einen eindeutigen Namen für dieses Ziel ein.
    • Typ: Wählen Sie Remote-Syslog aus.
    • Format: Wählen Sie das Logformat aus.
    • Weiterleiten an: Wählen Sie High-Speed-Log-Ziel > das Ziel aus, das auf den Pool der Remote-Syslog-Server verweist.
  4. Klicken Sie auf Fertig.

Log Publisher konfigurieren

  1. Gehen Sie auf dem Tab Main (Haupt) zu System > Logs > Configuration > Log Publishers (System > Protokolle > Konfiguration > Log-Publisher).
  2. Klicken Sie auf Erstellen.
  3. Geben Sie die folgenden Konfigurationsdetails an:
    • Name: Geben Sie einen eindeutigen Namen für diesen Publisher ein.
    • Ziele: Wählen Sie das neu erstellte Ziel für Remote Syslog aus der Liste Verfügbar aus und klicken Sie dann auf keyboard_double_arrow_left Verschieben, um das Ziel in die Liste Ausgewählt zu verschieben.
  4. Klicken Sie auf Fertig.

Benutzerdefiniertes DNS-Logging-Profil konfigurieren

  1. Rufen Sie auf dem Tab Main (Haupt) DNS > Delivery > Profiles > Other > DNS Logging or Local Traffic > Profiles > Other > DNS Logging auf.
  2. Klicken Sie auf Erstellen.
  3. Geben Sie die folgenden Konfigurationsdetails an:
    • Name: Geben Sie einen eindeutigen Namen für dieses Profil ein.
    • Log Publisher (Log-Publisher): Wählen Sie das neu erstellte Ziel aus, an das das System DNS-Logeinträge sendet.
    • Anfragen protokollieren: Klicken Sie das Kästchen Aktiviert an.
    • Antworten protokollieren: Klicken Sie das Kästchen Aktiviert an.
    • Abfrage-ID einbeziehen: Aktivieren Sie das Kästchen Aktiviert.
  4. Klicken Sie auf Fertig.

DNS-Profil dem DNS-Listener hinzufügen

  1. Rufen Sie auf dem Tab Main (Haupt) DNS > Delivery > Listeners > select DNS listener (DNS > Bereitstellung > Listener > DNS-Listener auswählen) auf.
  2. Wählen Sie im Abschnitt Dienst unter DNS-Profil das zuvor konfigurierte DNS-Profil aus.
  3. Klicken Sie auf Aktualisieren.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
application principal.application Direkt aus dem Feld application zugeordnet.
cipher_name network.tls.cipher Direkt aus dem Feld cipher_name zugeordnet.
command_line principal.process.command_line Direkt aus dem Feld command_line zugeordnet.
desc security_result.description Direkt aus dem Feld desc zugeordnet.
desc_icrd security_result.description Direkt aus dem Feld desc_icrd zugeordnet.
dest_ip target.ip Direkt aus dem Feld dest_ip zugeordnet.
dest_port target.port Direkt aus dem Feld dest_port zugeordnet.
file_path principal.process.file.full_path Direkt aus dem Feld file_path zugeordnet. Wird auf true gesetzt, wenn level „alert“ ist. Andernfalls ist der Wert nicht vorhanden. Wird auf true gesetzt, wenn level „alert“ ist. Andernfalls ist der Wert nicht vorhanden.
msg3 security_result.description Direkt aus dem Feld msg3 zugeordnet, wenn application „run-parts“ ist.
metadata.event_type Wird auf GENERIC_EVENT gesetzt, wenn event_type leer ist. Andernfalls wird der Wert aus event_type übernommen. Fest codiert auf „DNS“. Fest codiert auf „F5“.
principal_hostname principal.hostname Direkt aus dem Feld principal_hostname zugeordnet.
proc_id principal.process.pid Direkt aus dem Feld proc_id zugeordnet.
received_bytes network.received_bytes Direkt aus dem Feld received_bytes zugeordnet.
resource_id target.resource.id Direkt aus dem Feld resource_id zugeordnet.
resource_parent principal.resource.parent Direkt aus dem Feld resource_parent zugeordnet.
response_code network.http.response_code Direkt aus dem Feld response_code zugeordnet. Wird anhand des Felds level ermittelt.
src_ip principal.ip Direkt aus dem Feld src_ip zugeordnet.
src_port principal.port Direkt aus dem Feld src_port zugeordnet.
tls_version network.tls.version Direkt aus dem Feld tls_version zugeordnet.
userName principal.user.userid Direkt aus dem Feld userName zugeordnet.
when event.timestamp Berechnet aus datetime1 und timezone oder datetime und timezone.

Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten