Big Switch BigCloudFabric-Logs erfassen
Parserversion:2.0
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.
Option 1: Dienstkonto für die Chronicle API erstellen (empfohlen)
- 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.
- Rufen Sie IAM & Verwaltung > Dienstkonten auf.
- Klicken Sie auf Dienstkonto erstellen.
- 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.
- Name des Dienstkontos: Geben Sie einen Namen für das Konto ein, z. B.
- Klicken Sie auf Erstellen und fortfahren.
- Klicken Sie im Abschnitt Diesem Dienstkonto Zugriff auf das Projekt erteilen auf Rolle auswählen und wählen Sie Chronicle-Bearbeiter aus.
- Klicken Sie auf Weiter und dann auf Fertig.
- Klicken Sie auf das erstellte Dienstkonto und rufen Sie dann den Tab Schlüssel auf.
- Klicken Sie auf Schlüssel hinzufügen > Neuen Schlüssel erstellen.
- Wählen Sie JSON aus und klicken Sie auf Erstellen. Die Schlüsseldatei wird auf Ihren Computer heruntergeladen.
- Speichern Sie die Schlüsseldatei als
ingestion-auth.jsonim Bindplane-Collector-Verzeichnis (/opt/observiq-otel-collector/ingestion-auth.jsonunter Linux oderC:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.jsonunter Windows) oder aktualisieren Siecreds_file_pathinconfig.yaml, sodass der Pfad mit dem Pfad übereinstimmt, unter dem Sie die Datei speichern. - 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)
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Erfassungs-Agents auf.
- Laden Sie die Authentifizierungsdatei für die Datenaufnahme herunter.
- Speichern Sie die Datei sicher auf dem System, auf dem der Bindplane-Agent installiert werden soll.
Google SecOps-Kundennummer abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Profile auf.
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
- Öffnen Sie die Eingabeaufforderung oder PowerShell als Administrator.
Führen Sie dazu diesen Befehl aus:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietWarten Sie, bis die Installation abgeschlossen ist.
Überprüfen Sie die Installation mit folgendem Befehl:
sc query observiq-otel-collectorDer Dienst sollte als RUNNING angezeigt werden.
Linux-Installation
- Öffnen Sie ein Terminal mit Root- oder sudo-Berechtigungen.
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.shWarten Sie, bis die Installation abgeschlossen ist.
Überprüfen Sie die Installation mit folgendem Befehl:
sudo systemctl status observiq-otel-collectorDer 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.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Konfigurationsdatei bearbeiten
Ersetzen Sie den gesamten Inhalt von
config.yamldurch 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_bcfErsetzen 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
514in die gewünschte Portnummer (z. B.1514fü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
- Linux:
YOUR_CUSTOMER_ID: Ersetzen Sie dies durch IhreCustomer ID. Weitere Informationen finden Sie unter Google SecOps-Kundennummer abrufen.location: Ersetzen Sie<LOCATION>durch die Region Ihrer Google SecOps-Instanz (z. B.us,europeoderasia-southeast1). Der Exporteur stellt diesem Wert das Präfixchronicle.googleapis.comvoran. 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 Einstellungchronicle.googleapis.combei.log_type: AufBIGSWITCH_BCFfestlegen (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
exportersdurch Folgendes. Legen Sie fürcreds_file_pathden Pfad zur Authentifizierungsdatei für die Datenaufnahme fest. Wenn sich Ihre Instanz außerhalb der USA befindet, ersetzen Siemalachiteingestion-pa.googleapis.comdurch 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, dannEnterund dannCtrl+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:
Führen Sie dazu diesen Befehl aus:
sudo systemctl restart observiq-otel-collectorPrüfen Sie, ob der Dienst ausgeführt wird:
sudo systemctl status observiq-otel-collectorLogs auf Fehler prüfen:
sudo journalctl -u observiq-otel-collector -f
So starten Sie den Bindplane-Agenten unter Windows neu:
Wählen Sie eine der folgenden Optionen aus:
Eingabeaufforderung oder PowerShell als Administrator:
net stop observiq-otel-collector && net start observiq-otel-collectorDienstkonsole:
- Drücken Sie
Win+R, geben Sieservices.mscein und drücken Sie die Eingabetaste. - Suchen Sie nach observIQ OpenTelemetry Collector.
- Klicken Sie mit der rechten Maustaste und wählen Sie Neu starten aus.
- Drücken Sie
Prüfen Sie, ob der Dienst ausgeführt wird:
sc query observiq-otel-collectorPrü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
- Melden Sie sich mit Ihren Administratoranmeldedaten in der Weboberfläche des BCF/CCF-Controllers an.
- Gehen Sie zu Wartung > Protokollierung.
- Klicken Sie auf den Tab Remote Logging.
- Klicken Sie auf Hinzufügen, um eine neue Konfiguration für einen Remote-Syslog-Server zu erstellen.
- 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
514ein (oder den Port, der in der Datei „config.yaml“ des Bindplane-Agents konfiguriert ist). - Protokoll: Wählen Sie UDP aus.
- Server: Geben Sie die IP-Adresse des Bindplane-Agent-Hosts ein (z. B.
- Klicken Sie auf Speichern oder Anwenden, um die Konfiguration zu speichern.
- Prüfen Sie, ob die Konfiguration in der Liste für die Remote-Protokollierung angezeigt wird.
Methode 2: Syslog über die Befehlszeile konfigurieren
- Stellen Sie über SSH eine Verbindung zum BCF/CCF-Controller her. Verwenden Sie dazu Ihre Administratoranmeldedaten.
Aktivierungsmodus aufrufen:
controller-1> enableRufen Sie den Konfigurationsmodus auf:
controller-1# configureRemote-Syslog-Server konfigurieren:
controller-1(config)# logging remote 192.168.1.100Ersetzen Sie
192.168.1.100durch die IP-Adresse des Bindplane-Agent-Hosts.Konfigurationsmodus beenden:
controller-1(config)# exitSyslog-Konfiguration prüfen:
controller-1# show loggingIn der Ausgabe sollte die konfigurierte IP-Adresse des Remote-Syslog-Servers angezeigt werden.
Logweiterleitung überprüfen
- Generieren Sie Testprotokollereignisse auf dem BCF/CCF-Controller, indem Sie Konfigurationsänderungen vornehmen oder den Systemstatus aufrufen.
Prüfen Sie die Bindplane-Agenten-Logs, um zu bestätigen, dass Syslog-Nachrichten empfangen werden:
Linux:
sudo journalctl -u observiq-otel-collector -fWindows:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Melden Sie sich in der Google SecOps-Konsole an und prüfen Sie, ob Logs in der Suche mit dem Aufnahmelabel
BIGSWITCH_BCFangezeigt 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