Big Switch BigCloudFabric-Logs erfassen

Parserversion:2.0

Unterstützt in:

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

Arista Networks Big Cloud Fabric (BCF), jetzt Converged Cloud Fabric (CCF), ist eine softwarebasierte Netzwerklösung (SDN), die eine automatisierte Verwaltung von Rechenzentrumsstrukturen über einen zentralen Controller ermöglicht. Der BCF/CCF-Controller verwaltet Leaf-Spine-Netzwerkarchitekturen und bietet zentrale Konfigurations-, Monitoring- und Fehlerbehebungsfunktionen für Rechenzentrumsnetzwerke von Unternehmen. Dieses Produkt wurde ursprünglich von Big Switch Networks entwickelt, bevor es von Arista Networks übernommen wurde.

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 BCF-/CCF-Controller
  • Wenn Sie den Agent hinter einem Proxy ausführen, müssen die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sein.
  • Administratorzugriff auf den BCF-/CCF-Controller über die GUI oder CLI
  • BCF/CCF-Controller-Version 2.5 oder höher (für Syslog-Unterstützung)

Google SecOps-Anmeldedaten für den Bindplane-Agenten abrufen

Wählen Sie eine der folgenden Methoden aus, um den Bindplane-Agenten bei Google SecOps zu authentifizieren:

  • Neue Bereitstellungen: Verwenden Sie die Chronicle API (Option 1).
  • Alte Bereitstellungen: Verwenden Sie die Datei für die Authentifizierung bei der Aufnahme (Option 2) weiterhin, bis die Ingestion API am 20. Juli 2027 eingestellt wird.
  1. Melden Sie sich in der Google Cloud -Konsole an und wählen Sie das Google Cloud -Projekt aus, das mit Ihrer Google SecOps-Instanz verknüpft ist.
  2. Rufen Sie IAM & Verwaltung > Dienstkonten auf.
  3. Klicken Sie auf Dienstkonto erstellen.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Name des Dienstkontos: Geben Sie einen Namen für das Konto ein, z. B. bindplane-ingest.
    • Dienstkontobeschreibung: Geben Sie eine Beschreibung ein, z. B. Bindplane agent log ingestion.
  5. Klicken Sie auf Erstellen und fortfahren.
  6. Klicken Sie im Abschnitt Diesem Dienstkonto Zugriff auf das Projekt erteilen auf Rolle auswählen und wählen Sie Chronicle-Bearbeiter aus.
  7. Klicken Sie auf Weiter und dann auf Fertig.
  8. Klicken Sie auf das erstellte Dienstkonto und rufen Sie dann den Tab Schlüssel auf.
  9. Klicken Sie auf Schlüssel hinzufügen > Neuen Schlüssel erstellen.
  10. Wählen Sie JSON aus und klicken Sie auf Erstellen. Die Schlüsseldatei wird auf Ihren Computer heruntergeladen.
  11. Speichern Sie die Schlüsseldatei als ingestion-auth.json im Bindplane-Collector-Verzeichnis (/opt/observiq-otel-collector/ingestion-auth.json unter Linux oder C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json unter Windows) oder aktualisieren Sie creds_file_path in config.yaml, sodass der Pfad mit dem Pfad übereinstimmt, unter dem Sie die Datei speichern.
  12. Rufen Sie IAM und Verwaltung > Einstellungen auf und kopieren Sie die Projektnummer. Sie benötigen sie für die Konfiguration des Exporters.

Option 2: Authentifizierungsdatei für die Aufnahme herunterladen (Legacy)

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Erfassungs-Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Datenaufnahme herunter.
  4. Speichern Sie die Datei sicher auf dem System, auf dem der Bindplane-Agent installiert werden soll.

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 Kundennummer aus dem Bereich Organization Details (Organisationsdetails).

Bindplane-Agent installieren

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

Windows-Installation

  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 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 im Installationsanleitung für den Bindplane-Agenten.

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

Konfigurationsdatei suchen

  • Linux:

    sudo nano /opt/observiq-otel-collector/config.yaml
    
  • Windows:

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

Konfigurationsdatei bearbeiten

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

    receivers:
      udplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/bigswitch_bcf:
        protocol: https
        # Region of your instance, for example us, europe, asia-southeast1
        location: <LOCATION>
        # Project number of the Google Cloud project linked to the instance
        project: '<PROJECT_NUMBER>'
        compression: gzip
        creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: chronicle.googleapis.com
        log_type: BIGSWITCH_BCF
        raw_log_field: body
        ingestion_labels:
          env: production
          source: bcf_controller
    
    service:
      pipelines:
        logs/bcf_to_chronicle:
          receivers:
            - udplog
          exporters:
            - chronicle/bigswitch_bcf
    
  2. Ersetzen Sie die folgenden Platzhalter:

    • Empfängerkonfiguration:

      • Der Empfänger ist so konfiguriert, dass er auf UDP-Port 514 auf Syslog-Nachrichten vom BCF/CCF-Controller wartet.
      • Wenn Sie einen anderen Port verwenden möchten, ändern Sie 514 in die gewünschte Portnummer (z. B. 1514 für Linux-Installationen ohne Administratorrechte).
    • Exporter-Konfiguration:

      • creds_file_path: Vollständiger Pfad zur JSON-Schlüsseldatei des Dienstkontos (Option 1):

        • Linux: /opt/observiq-otel-collector/ingestion-auth.json
        • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
      • YOUR_CUSTOMER_ID: Ersetzen Sie dies durch Ihre Customer ID. Weitere Informationen finden Sie unter Google SecOps-Kundennummer abrufen.

      • location: Ersetzen Sie <LOCATION> durch die Region Ihrer Google SecOps-Instanz (z. B. us, europe oder asia-southeast1). Der Exporteur stellt diesem Wert das Präfix chronicle.googleapis.com voran. Eine vollständige Liste finden Sie unter Regionale Endpunkte.

      • project: Ersetzen Sie <PROJECT_NUMBER> durch die Projektnummer unter IAM & Verwaltung > Einstellungen.

      • endpoint: Behalten Sie die Einstellung chronicle.googleapis.com bei.

      • log_type: Auf BIGSWITCH_BCF festlegen (nicht ändern)

      • ingestion_labels: Optionale Labels zum Kategorisieren von Logs (nach Bedarf anpassen)

Legacy-Ingestion-API-Exporter

  • Wenn Sie die Datei zur Authentifizierung bei der Aufnahme aus Option 2 verwenden, ersetzen Sie den Block exporters durch Folgendes. Legen Sie für creds_file_path den Pfad zur Authentifizierungsdatei für die Datenaufnahme fest. Wenn sich Ihre Instanz außerhalb der USA befindet, ersetzen Sie malachiteingestion-pa.googleapis.com durch Ihren regionalen Endpunkt (z. B. europe-malachiteingestion-pa.googleapis.com).

    exporters:
      chronicle/bigswitch_bcf:
        compression: gzip
        creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: BIGSWITCH_BCF
        raw_log_field: body
        ingestion_labels:
          env: production
          source: bcf_controller
    

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

  • So starten Sie den Bindplane-Agenten unter Linux neu:

    1. Führen Sie dazu diesen Befehl aus:

      sudo systemctl restart observiq-otel-collector
      
    2. Prüfen Sie, ob der Dienst ausgeführt wird:

      sudo systemctl status observiq-otel-collector
      
    3. Logs auf Fehler prüfen:

      sudo journalctl -u observiq-otel-collector -f
      
  • So starten Sie den Bindplane-Agenten unter Windows neu:

    1. Wählen Sie eine der folgenden Optionen aus:

      • Eingabeaufforderung oder PowerShell als Administrator:

        net stop observiq-otel-collector && net start observiq-otel-collector
        
      • Dienstkonsole:

        1. Drücken Sie Win+R, geben Sie services.msc ein und drücken Sie die Eingabetaste.
        2. Suchen Sie nach observIQ OpenTelemetry Collector.
        3. Klicken Sie mit der rechten Maustaste und wählen Sie Neu starten aus.
    2. Prüfen Sie, ob der Dienst ausgeführt wird:

      sc query observiq-otel-collector
      
    3. Prüfen Sie die Logs auf Fehler:

      type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
      

Syslog-Weiterleitung für Big Switch BigCloudFabric konfigurieren

Konfigurieren Sie den BCF-/CCF-Controller so, dass Syslog-Nachrichten an den Bindplane-Agent weitergeleitet werden. Verwenden Sie dazu entweder die GUI oder die CLI.

Methode 1: Syslog über die GUI konfigurieren

  1. Melden Sie sich mit Ihren Administratoranmeldedaten in der Weboberfläche des BCF/CCF-Controllers an.
  2. Gehen Sie zu Wartung > Protokollierung.
  3. Klicken Sie auf den Tab Remote Logging.
  4. Klicken Sie auf Hinzufügen, um eine neue Konfiguration für einen Remote-Syslog-Server zu erstellen.
  5. Geben Sie die folgenden Konfigurationsdetails an:
    • Server: Geben Sie die IP-Adresse des Bindplane-Agent-Hosts ein (z. B. 192.168.1.100).
    • Port: Geben Sie 514 ein (oder den Port, der in der Datei „config.yaml“ des Bindplane-Agents konfiguriert ist).
    • Protokoll: Wählen Sie UDP aus.
  6. Klicken Sie auf Speichern oder Anwenden, um die Konfiguration zu speichern.
  7. Prüfen Sie, ob die Konfiguration in der Liste für die Remote-Protokollierung angezeigt wird.

Methode 2: Syslog über die Befehlszeile konfigurieren

  1. Stellen Sie über SSH eine Verbindung zum BCF/CCF-Controller her. Verwenden Sie dazu Ihre Administratoranmeldedaten.
  2. Aktivierungsmodus aufrufen:

    controller-1> enable
    
  3. Rufen Sie den Konfigurationsmodus auf:

    controller-1# configure
    
  4. Remote-Syslog-Server konfigurieren:

    controller-1(config)# logging remote 192.168.1.100
    

    Ersetzen Sie 192.168.1.100 durch die IP-Adresse des Bindplane-Agent-Hosts.

  5. Konfigurationsmodus beenden:

    controller-1(config)# exit
    
  6. Syslog-Konfiguration prüfen:

    controller-1# show logging
    

    In der Ausgabe sollte die konfigurierte IP-Adresse des Remote-Syslog-Servers angezeigt werden.

Logweiterleitung überprüfen

  1. Generieren Sie Testprotokollereignisse auf dem BCF/CCF-Controller, indem Sie Konfigurationsänderungen vornehmen oder den Systemstatus aufrufen.
  2. Prüfen Sie die Bindplane-Agenten-Logs, um zu bestätigen, dass Syslog-Nachrichten empfangen werden:

    • Linux:

      sudo journalctl -u observiq-otel-collector -f
      
    • Windows:

      type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
      
  3. Melden Sie sich in der Google SecOps-Konsole an und prüfen Sie, ob Logs in der Suche mit dem Aufnahmelabel BIGSWITCH_BCF angezeigt werden.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
Beschreibung metadata.description Wert direkt kopiert, wobei voran- und nachgestellte Leerzeichen entfernt wurden
target_host, time, product_event_type, description, application metadata.event_type Wird auf STATUS_HEARTBEAT gesetzt, wenn target_host und time nicht leer sind; SERVICE_STOP, wenn product_event_type == PORT_DOWN; SERVICE_START, wenn description mit „.Running job.“ übereinstimmt oder product_event_type == PORT_UP oder application == snmpd-execstart; STATUS_SHUTDOWN, wenn description mit „.status down.“ übereinstimmt; SERVICE_DELETION, wenn product_event_type == Removing Endpoint; SERVICE_CREATION, wenn product_event_type == Adding Endpoint; SERVICE_MODIFICATION, wenn product_event_type == Moving Endpoint oder die Beschreibung mit „.change instances.“ übereinstimmt; NETWORK_CONNECTION, wenn target_host nicht leer ist, andernfalls GENERIC_EVENT
product_event_type metadata.product_event_type Wert direkt kopiert
application_protocol network.application_protocol Wird auf „UNKNOWN_APPLICATION_PROTOCOL“ gesetzt, wenn application_protocol == „lldpa“ ist.
Host principal.hostname Wert direkt kopiert
ip principal.ip Wert direkt kopiert
process_id principal.process.pid Wert direkt kopiert
NUTZER principal.user.userid Wert direkt kopiert
log_level security_result Objekt mit dem Schweregrad „INFORMATIONAL“ bei INFO, „MEDIUM“ bei WARN und „HIGH“ bei ERROR; Aktion auf „ALLOW“ gesetzt bei INFO oder WARN, „BLOCK“ bei ERROR
Anwendung target.application Wert direkt kopiert
target_host target.hostname Wert direkt kopiert
Port target.port In Ganzzahl umgewandelt
COMMAND target.process.command_line Wert direkt kopiert
product_specific_id target.process.product_specific_process_id Mit „Bigswitch:“ beginnen
kv_1, kv2, kv3 target.user.group_identifiers Zusammengeführt aus kv_1, wenn nicht leer, kv2, wenn nicht leer, kv3, wenn nicht leer
metadata.product_name Auf „Big Cloud Fabric“ festgelegt
metadata.vendor_name Auf „Big Switch“ festgelegt

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