Cisco-Router-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Cisco Router-Logs mit dem Bindplane-Agent in Google Security Operations aufnehmen.

Cisco-Router generieren Syslog-Nachrichten für Netzwerkereignisse, ACL-Übereinstimmungen, Authentifizierung und Systemvorgänge. Der Parser extrahiert Felder mithilfe von Grok-Mustern und ordnet sie dem Unified Data Model (UDM) zu.

Hinweis

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

  • Eine Google SecOps-Instanz
  • Windows Server 2016 oder höher oder Linux-Host mit systemd
  • Netzwerkverbindung zwischen dem Bindplane-Agent und dem Cisco-Router
  • Wenn Sie den Agent hinter einem Proxy ausführen, müssen die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sein.
  • Privilegierter Zugriff auf die Cisco-Router-CLI

Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen

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

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Profile 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
    
  3. Warten Sie, bis die Installation abgeschlossen ist.

  4. Überprüfen Sie die Installation mit folgendem Befehl:

    sc query observiq-otel-collector
    

    Der Dienst sollte als RUNNING (Wird ausgeführt) angezeigt werden.

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
    
  3. Warten Sie, bis die Installation abgeschlossen ist.

  4. Überprüfen Sie die Installation mit folgendem Befehl:

    sudo systemctl status observiq-otel-collector
    

    Der Dienst sollte als aktiv (wird ausgeführt) angezeigt werden.

Zusätzliche Installationsressourcen

Weitere Installationsoptionen und Informationen zur Fehlerbehebung finden Sie in der Installationsanleitung für den Bindplane-Agent.

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

Konfigurationsdatei suchen

  • Linux:

    sudo nano /etc/bindplane-agent/config.yaml
    
  • Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

Konfigurationsdatei bearbeiten

  • Ersetzen Sie den gesamten Inhalt von config.yaml durch die folgende Konfiguration:

    receivers:
        udplog:
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/cisco_router:
            compression: gzip
            creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
            customer_id: '<customer_id>'
            endpoint: malachiteingestion-pa.googleapis.com
            log_type: CISCO_ROUTER
            raw_log_field: body
    
    service:
        pipelines:
            logs/cisco_router_to_chronicle:
                receivers:
                    - udplog
                exporters:
                    - chronicle/cisco_router
    

Konfigurationsparameter

Ersetzen Sie die folgenden Platzhalter:

  • Empfängerkonfiguration:

    • listen_address: IP-Adresse und Port, auf die gewartet werden soll:
      • 0.0.0.0, um alle Schnittstellen zu überwachen (empfohlen)
      • Port 514 ist der Standard-Syslog-Port (erfordert Root unter Linux; verwenden Sie 1514 für Nicht-Root).
  • Exporter-Konfiguration:

    • creds_file_path: Vollständiger Pfad zur Datei für die Authentifizierung bei der Aufnahme:
      • Linux: /etc/bindplane-agent/ingestion-auth.json
      • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • customer_id: Kunden-ID, die aus der Google SecOps Console kopiert wurde
    • endpoint: Regionale Endpunkt-URL:
      • USA: malachiteingestion-pa.googleapis.com
      • Europa: europe-malachiteingestion-pa.googleapis.com
      • Asien: asia-southeast1-malachiteingestion-pa.googleapis.com
      • Eine vollständige Liste finden Sie unter Regionale Endpunkte.

Konfigurationsdatei speichern

  • Speichern Sie die Datei nach der Bearbeitung:
    • Linux: Drücken Sie Ctrl+O, dann Enter und dann Ctrl+X.
    • Windows: Klicken Sie auf Datei > Speichern.

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 observiq-otel-collector
    
    1. Prüfen Sie, ob der Dienst ausgeführt wird:

      ```bash
      sudo systemctl status observiq-otel-collector
      ```
      
    2. Logs auf Fehler prüfen:

      ```bash
      sudo journalctl -u observiq-otel-collector -f
      ```
      

Syslog auf einem Cisco-Router konfigurieren

  1. Melden Sie sich beim Cisco-Router an.
  2. Berechtigungen ausweiten:

    enable
    
  3. So wechseln Sie in den Konfigurationsmodus:

    conf t
    
  4. Syslog konfigurieren:

    logging host <BINDPLANE_IP> transport <tcp/udp> port <PORT>
    logging source-interface <INTERFACE>
    
    • Ersetzen Sie <BINDPLANE_IP> durch die IP-Adresse des Bindplane-Agents.
    • Ersetzen Sie <tcp/udp> durch das konfigurierte Listening-Protokoll (z. B. udp).
    • Ersetzen Sie <INTERFACE> durch die Cisco-Schnittstellen-ID (z. B. Ethernet1/1).
  5. Legen Sie die Prioritätsstufe fest:

    logging trap Informational
    logging console Informational
    logging severity Informational
    
  6. Legen Sie die Syslog-Einrichtung fest:

    logging facility local6
    
  7. Zeitstempel aktivieren:

    service timestamps log datetime
    
  8. Speichern Sie die Datei und beenden Sie den Vorgang.

  9. Speichern Sie die Konfiguration, damit sie auch nach einem Neustart erhalten bleibt:

    copy running-config startup-config
    

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
client_ip target.ip, target.asset.ip Der Wert wird aus dem Feld client_ip übernommen, das vom Grok-Parser extrahiert wird.
client_mac target.mac Der Wert wird aus dem Feld client_mac übernommen, das vom Grok-Parser extrahiert wird.
dst_ip target.ip, target.asset.ip Der Wert wird aus dem Feld dst_ip übernommen, das vom Grok-Parser extrahiert wird.
dst_port target.port Der Wert wird aus dem Feld dst_port übernommen, das vom Grok-Parser extrahiert und in eine Ganzzahl konvertiert wird.
duration - Dieses Feld ist nicht dem UDM zugeordnet.
host_ip target.ip, target.asset.ip Der Wert wird aus dem Feld host_ip übernommen, das vom Grok-Parser extrahiert wird.
local_proxy intermediary.ip Der Wert wird aus dem Feld local_proxy übernommen, das vom Grok-Parser extrahiert wird.
message_data metadata.description Der Wert wird aus dem Feld message_data übernommen, das vom Grok-Parser extrahiert wird.
protocol network.ip_protocol Der Wert wird aus dem Feld protocol übernommen, das vom Grok-Parser extrahiert wurde, und in Großbuchstaben umgewandelt.
received_bytes network.received_bytes Der Wert wird aus dem Feld received_bytes übernommen, das vom Grok-Parser extrahiert und in eine vorzeichenlose Ganzzahl konvertiert wird.
referral_url network.http.referral_url Der Wert wird aus dem Feld referral_url übernommen, das vom Grok-Parser extrahiert wird.
remote_proxy intermediary.ip Der Wert wird aus dem Feld remote_proxy übernommen, das vom Grok-Parser extrahiert wird.
send_bytes network.sent_bytes Der Wert wird aus dem Feld send_bytes übernommen, das vom Grok-Parser extrahiert und in eine vorzeichenlose Ganzzahl konvertiert wird.
sent_bytes network.sent_bytes Der Wert wird aus dem Feld sent_bytes übernommen, das vom Grok-Parser extrahiert und in eine vorzeichenlose Ganzzahl konvertiert wird.
server_host target.hostname, target.asset.hostname Der Wert wird aus dem Feld server_host übernommen, das vom Grok-Parser extrahiert wird.
server_ip target.ip, target.asset.ip Der Wert wird aus dem Feld server_ip übernommen, das vom Grok-Parser extrahiert wird.
src_ip principal.ip, principal.asset.ip Der Wert wird aus dem Feld src_ip übernommen, das vom Grok-Parser extrahiert wird.
src_port principal.port Der Wert wird aus dem Feld src_port übernommen, das vom Grok-Parser extrahiert und in eine Ganzzahl konvertiert wird.
user_ip target.ip, target.asset.ip Der Wert wird aus dem Feld user_ip übernommen, das vom Grok-Parser extrahiert wird.
user_mail principal.user.userid, principal.user.email_addresses Der Wert wird aus dem Feld user_mail übernommen, das vom Grok-Parser extrahiert wird.
username target.user.userid Der Wert wird aus dem Feld username übernommen, das vom Grok-Parser extrahiert wird.
- metadata.event_timestamp Der Wert wird aus dem Feld create_time übernommen.
- metadata.event_type Der Wert ist standardmäßig auf GENERIC_EVENT festgelegt und wird basierend auf dem geparsten Logeintrag in bestimmte Ereignistypen geändert.
- metadata.log_type Der Wert wird auf CISCO_ROUTER festgelegt.
- metadata.product_event_type Der Wert wird aus dem Feld message_type übernommen, das durch Kombinieren der Felder facility, priority und mnemonics generiert wird.
- metadata.product_name Der Wert wird auf Router festgelegt.
- metadata.vendor_name Der Wert wird auf Cisco festgelegt.
- network.application_protocol Der Wert wird auf HTTP oder HTTPS festgelegt, wenn das Feld protocol http bzw. https ist.
- extensions.auth.type Der Wert ist standardmäßig auf AUTHTYPE_UNSPECIFIED festgelegt und wird basierend auf dem geparsten Logeintrag in bestimmte Authentifizierungstypen geändert.
- security_result.action Der Wert wird für erfolgreiche Anmeldungen auf ALLOW und für fehlgeschlagene Anmeldungen auf BLOCK gesetzt.
- security_result.category Der Wert wird für Ereignisse mit IP-Optionen auf NETWORK_SUSPICIOUS und für fehlgeschlagene Anmeldungen auf AUTH_VIOLATION festgelegt.
- security_result.description Der Wert wird für verschiedene Ereignisse auf bestimmte Meldungen festgelegt.
- security_result.severity Der Wert wird bei erfolgreichen Anmeldungen auf LOW, bei fehlgeschlagenen Anmeldungen auf MEDIUM und bei anderen Ereignissen auf INFORMATIONAL gesetzt.
- security_result.severity_details Der Wert wird für fehlgeschlagene Log-ins aus dem Feld fail_reason übernommen und für Ereignisse mit IP-Optionen auf Informational message festgelegt.
- security_result.summary Der Wert wird für verschiedene Ereignisse auf bestimmte Meldungen festgelegt.

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