Huawei-Switch-Logs erfassen

Unterstützt in:

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

Huawei-Switches für Unternehmensnetzwerke generieren Syslog-Nachrichten für Schnittstellenereignisse, Authentifizierung, Spanning Tree und Konfigurationsänderungen. Die Logs folgen dem Standard-Syslog-Format und erfassen die wichtigsten und Zielnetzwerkattribute, die Nutzeridentität, Prozessmetadaten und Details zum Sicherheitsergebnis.

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 Huawei-Switch
  • 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 Huawei-Switch-Verwaltungsoberfläche (CLI oder Web)

Authentifizierungsdatei für die Google SecOps-Datenaufnahme abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Aufnahme herunter.
  4. 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 > 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 /opt/observiq-otel-collector/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/huawei_switch:
            compression: gzip
            creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
            customer_id: '<customer_id>'
            endpoint: malachiteingestion-pa.googleapis.com
            log_type: HUAWEI_SWITCH
            raw_log_field: body
            ingestion_labels:
                env: production
    
    service:
        pipelines:
            logs/huawei_to_chronicle:
                receivers:
                    - udplog
                exporters:
                    - chronicle/huawei_switch
    

Konfigurationsparameter

Ersetzen Sie die folgenden Platzhalter:

  • Empfängerkonfiguration:

    • udplog: Der Empfängertyp basierend auf dem Protokoll:
      • udplog für UDP-Syslog
      • tcplog für TCP-Syslog
    • 0.0.0.0: IP-Adresse, auf der gelauscht werden soll:
      • 0.0.0.0, um alle Schnittstellen zu überwachen (empfohlen)
      • Bestimmte IP-Adresse, die auf einer Schnittstelle überwacht werden soll
    • 514: Portnummer, die überwacht werden soll (z. B. 514, 1514, 6514)
  • Exporter-Konfiguration:

    • huawei_switch: Beschreibender Name für den Exporter
    • 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 aus dem vorherigen Schritt
    • 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.
    • HUAWEI_SWITCH: Logtyp genau wie in Chronicle
    • ingestion_labels: Optionale Labels im YAML-Format (z. B. env: production)
  • Pipelinekonfiguration:

    • huawei_to_chronicle: Aussagekräftiger Name für die Pipeline

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:

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

      sudo journalctl -u observiq-otel-collector -f
      
  • Wählen Sie eine der folgenden Optionen aus, um den Bindplane-Agent unter Windows neu zu starten:

    • Eingabeaufforderung oder PowerShell als Administrator:

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • Services-Konsole:

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

        sc query observiq-otel-collector
        
      5. Logs auf Fehler prüfen:

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

Syslog-Weiterleitung für Huawei-Switch konfigurieren

  1. Stellen Sie über SSH oder die Konsole eine Verbindung zum Huawei-Switch her.
  2. Rufen Sie die Systemansicht auf:

    system-view
    
  3. Aktivieren Sie das Informationscenter, falls es noch nicht aktiviert ist:

    info-center enable
    
  4. Konfigurieren Sie den Syslog-Host so, dass er auf den BindPlane-Agenten verweist:

    info-center loghost <BINDPLANE_AGENT_IP>
    
    • Ersetzen Sie <BINDPLANE_AGENT_IP> durch die IP-Adresse des Bindplane-Agent-Hosts.
  5. Optional: Legen Sie die Einrichtung und den Schweregrad fest:

    info-center loghost <BINDPLANE_AGENT_IP> facility local7 level informational
    
  6. Führen Sie ein Commit der Konfiguration durch:

    commit
    
  7. Konfiguration prüfen:

    display info-center
    
  8. Prüfen Sie anhand der Bindplane-Agent-Logs, ob Syslog-Nachrichten empfangen werden.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
AuthenticationMethod_label additional.fields Zusammengeführt
Command_label additional.fields Zusammengeführt
DeviceType_label additional.fields Zusammengeführt
Flapping_port_1_label additional.fields Zusammengeführt
Flapping_port_label additional.fields Zusammengeführt
InfoID_label additional.fields Zusammengeführt
Interface_label additional.fields Zusammengeführt
Task_label additional.fields Zusammengeführt
VLANID_label additional.fields Zusammengeführt
accept_label additional.fields Zusammengeführt
alarmID_label additional.fields Zusammengeführt
assistant_name_label additional.fields Zusammengeführt
body_label additional.fields Zusammengeführt
clearType_label additional.fields Zusammengeführt
content_type_label additional.fields Zusammengeführt
event_identifier_label additional.fields Zusammengeführt
facilityName_label additional.fields Zusammengeführt
facility_label additional.fields Zusammengeführt
frag_index_label additional.fields Zusammengeführt
original_port_label additional.fields Zusammengeführt
port_2_label additional.fields Zusammengeführt
service_flapping_port1_label additional.fields Zusammengeführt
service_flapping_port2_label additional.fields Zusammengeführt
service_original_port_label additional.fields Zusammengeführt
severity_label additional.fields Zusammengeführt
vlan_id_label additional.fields Zusammengeführt
has_principal extensions.auth.type Zugeordnet: true → AUTHTYPE_UNSPECIFIED
hostname intermediary.hostname Direkt zugeordnet
raw_hostname intermediary.hostname Direkt zugeordnet
desc metadata.description Direkt zugeordnet
logfile_description metadata.description Direkt zugeordnet
service_mac_description metadata.description Direkt zugeordnet
temp_description metadata.description Direkt zugeordnet
raw_syslog_timestamp metadata.event_timestamp Geparst als MMM d yyyy HH:mm:ss
syslog_timestamp metadata.event_timestamp Geparst als MMM dd yyyy HH:mm:ss.SSS
has_principal metadata.event_type Zugeordnet: true → USER_LOGOUT, true → STATUS_UPDATE, true → NETWORK_CONNECTION
has_user metadata.event_type Zugeordnet: true → USER_UNCATEGORIZED
cid metadata.product_log_id Direkt zugeordnet
temp_cid metadata.product_log_id Direkt zugeordnet
temp_service metadata.product_log_id Direkt zugeordnet
UserType network.application_protocol Zugeordnet: (?i)SSH → SSH
Method network.http.method Direkt zugeordnet
SessionId network.session_id Direkt zugeordnet
devid principal.asset.asset_id Direkt zugeordnet
SourceAddress principal.asset.ip Zusammengeführt
host principal.asset.ip Zugeordnet: ^(?:[0-9]{1,3}[.]){3}[0-9]{1,3}$ → host
Ip principal.ip Zusammengeführt
RemoteIp principal.ip Zusammengeführt
SourceAddress principal.ip Zusammengeführt
host principal.ip Zugeordnet: ^(?:[0-9]{1,3}[.]){3}[0-9]{1,3}$ → host
MacAddress principal.mac Zusammengeführt
mac_address principal.mac Zusammengeführt
cmd principal.process.command_line Direkt zugeordnet
ProcessId principal.process.pid Direkt zugeordnet
VpnName principal.resource.name Direkt zugeordnet
temp_oid principal.resource.product_object_id Direkt zugeordnet
User principal.user.userid Direkt zugeordnet
UserName principal.user.userid Direkt zugeordnet
Reason security_result.description Direkt zugeordnet
severityName security_result.severity Zugeordnet: warning → MEDIUM
severityName security_result.severity_details Direkt zugeordnet
state security_result.severity_details Direkt zugeordnet
DestAddress target.asset.ip Zusammengeführt
DestAddress target.ip Zusammengeführt
Destination target.ip Zusammengeführt
LocalIp target.ip Zusammengeführt
temp_security target.resource.name Direkt zugeordnet
tty_type target.resource.name Direkt zugeordnet
Url target.url Direkt zugeordnet
extensions.auth.type Konstante: AUTHTYPE_UNSPECIFIED
metadata.event_type Konstante: USER_LOGOUT
metadata.product_name Konstante: HUAWEI_SWITCH
metadata.vendor_name Konstante: HUAWEI_SWITCH
network.application_protocol Konstante: SSH
security_result.severity Konstante: MEDIUM
UserAddress event.idm.read_only_udm.principal.ip und event.idm.read_only_udm.principal.asset.ip Aus dem Änderungsprotokoll zugeordnet
LocalAddress event.idm.read_only_udm.target.ip und event.idm.read_only_udm.target.asset.ip Aus dem Änderungsprotokoll zugeordnet
FailedReason event.idm.read_only_udm.security_result.description Aus dem Änderungsprotokoll zugeordnet
VPNInstanceName event.idm.read_only_udm.target.resource.name Aus dem Änderungsprotokoll zugeordnet
event_hostname event.idm.read_only_udm.target.hostname und event.idm.read_only_udm.target.asset.hostname Aus dem Änderungsprotokoll zugeordnet
desc_input event.idm.read_only_udm.metadata.description Aus dem Änderungsprotokoll zugeordnet
event_type_value event.idm.read_only_udm.metadata.product_event_type Aus dem Änderungsprotokoll zugeordnet
event_identifier_value event.idm.read_only_udm.metadata.product_event_type Aus dem Änderungsprotokoll zugeordnet
UserType event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
event_type event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
ServiceType event.idm.read_only_udm.target.application Aus dem Änderungsprotokoll zugeordnet
IPADDRESS event.idm.read_only_udm.principal.ip und event.idm.read_only_udm.principal.asset.ip Aus dem Änderungsprotokoll zugeordnet
InterfaceName event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
TrapThreshold event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
BandWidthUsage event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
UserName event.idm.read_only_udm.principal.user.userid Aus dem Änderungsprotokoll zugeordnet
SourceAddress event.idm.read_only_udm.principal.ip Aus dem Änderungsprotokoll zugeordnet
SourceAddress event.idm.read_only_udm.principal.asset.ip Aus dem Änderungsprotokoll zugeordnet
DestAddress event.idm.read_only_udm.target.ip Aus dem Änderungsprotokoll zugeordnet
DestAddress event.idm.read_only_udm.target.asset.ip Aus dem Änderungsprotokoll zugeordnet
Method event.idm.read_only_udm.network.http.method Aus dem Änderungsprotokoll zugeordnet
SessionId event.idm.read_only_udm.network.session_id Aus dem Änderungsprotokoll zugeordnet
Url event.idm.read_only_udm.target.url Aus dem Änderungsprotokoll zugeordnet
FragIndex event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
Accept event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
ContentType event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
Body event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
AssistantName event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
raw_syslog_timestamp event.idm.read_only_udm.metadata.event_timestamp Aus dem Änderungsprotokoll zugeordnet
raw_hostname event.idm.read_only_udm.intermediary.hostname Aus dem Änderungsprotokoll zugeordnet
mac_address event.idm.read_only_udm.principal.mac Aus dem Änderungsprotokoll zugeordnet
temp_oid event.idm.read_only_udm.principal.resource.product_object_id Aus dem Änderungsprotokoll zugeordnet
severity event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
facility event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
facilityName event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
severityName event.idm.read_only_udm.security_result.severity_details Aus dem Änderungsprotokoll zugeordnet
severityName event.idm.read_only_udm.security_result.severity Aus dem Änderungsprotokoll zugeordnet
DeviceType event.idm.read_only_udm.additional.fields Aus dem Änderungsprotokoll zugeordnet
syslog_timestamp event.idm.read_only_udm.metadata.event_timestamp Aus dem Änderungsprotokoll zugeordnet
devid event.idm.read_only_udm.principal.asset.asset_id Aus dem Änderungsprotokoll zugeordnet

Änderungsprotokoll

Änderungsprotokoll für diesen Parser ansehen

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