Brocade-Switch-Logs erfassen

Unterstützt in:

Dieser Parser extrahiert Felder aus Brocade-Switch-Logs mithilfe von Grok-Mustern, die verschiedenen Logformaten entsprechen. Anschließend werden diese extrahierten Felder UDM-Feldern zugeordnet. Dabei werden verschiedene Logstrukturen verarbeitet und die Daten werden mit Metadaten wie Anbieter- und Produktinformationen angereichert. Der Parser führt auch Datentransformationen durch, z. B. das Konvertieren von Schweregraden und das Verarbeiten wiederholter Nachrichten, bevor die endgültige UDM-Ausgabe generiert wird.

Hinweise

  • Prüfen Sie, ob Sie eine Google Security Operations-Instanz haben.
  • Achten Sie darauf, dass Sie Windows 2016 oder höher oder einen Linux-Host mit systemd verwenden.
  • Wenn Sie einen Proxy verwenden, müssen die Firewallports geöffnet sein.
  • Sie müssen CLI-Administratorzugriff auf den Brocade-Switch haben.

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.

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

  1. Führen Sie für die Windows-Installation das folgende Skript aus:
    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
  2. Führen Sie für die Linux-Installation das folgende Skript aus:
    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
  3. Weitere Installationsoptionen finden Sie in dieser Installationsanleitung.

Bindplane-Agent so konfigurieren, dass Syslog-Daten aufgenommen und an Google SecOps gesendet werden

  1. Greifen Sie auf den Computer zu, auf dem BindPlane installiert ist.
  2. Bearbeiten Sie die Datei config.yamlso:

    receivers:
        tcplog:
            # Replace the below port <54525> and IP <0.0.0.0> with your specific values
            listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: Brocade_Switch
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Starten Sie den Bindplane-Agent neu, um die Änderungen zu übernehmen:

    sudo systemctl restart bindplane
    

Syslog-Export von einem Brocade-Switch konfigurieren

  1. Stellen Sie mit den entsprechenden Anmeldedaten eine Verbindung zum Brocade-Switch über SSH oder Telnet her.
  2. Führen Sie den folgenden Befehl aus, um die IP-Adresse oder den Hostnamen und den Port des Syslog-Servers (Bindplane) anzugeben:

    syslogadmin --set -ip <IP> -port <Port>
    

    Beispiel:

    syslogadmin --set -ip 10.10.10.10 -port 54525
    
  3. Führen Sie den folgenden Befehl aus, um die konfigurierten Syslog-Server aufzurufen:

    syslogadmin --show -ip
    

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
application additional.fields[].key: „application“
additional.fields[].value.string_value:
Wert, der aus dem Feld application@1588 im Rohlog extrahiert wird, wenn das Feld „KV_DATA“ vorhanden ist.
class additional.fields[].key: „class“
additional.fields[].value.string_value:
Wert, der aus dem Feld class@1588 im Rohlog extrahiert wird, wenn das Feld „KV_DATA“ vorhanden ist.
domain principal.administrative_domain Der Wert, der aus dem Grok-Muster extrahiert wurde, das dem Feld domain entspricht.
Event additional.fields[].key: „event_category“
additional.fields[].value.string_value:
Wert, der aus dem Feld arg0@1588 im Rohlog extrahiert wird, wenn das Feld „KV_DATA“ vorhanden ist.
event_id metadata.product_log_id Der Wert, der aus dem Grok-Muster extrahiert wurde, das dem Feld event_id entspricht.
event_type metadata.product_event_type Der Wert, der aus dem Grok-Muster extrahiert wurde, das dem Feld event_type entspricht.
flags additional.fields[].key: „flags“
additional.fields[].value.string_value:
Der Wert, der aus dem Grok-Muster extrahiert wurde, das dem Feld flags entspricht.
Info metadata.description Der aus dem Feld Info extrahierte Wert, der mit grok geparst wurde.
interface app_protocol_src Wert, der aus dem Feld interface@1588 im Rohlog extrahiert wird, wenn das Feld „KV_DATA“ vorhanden ist. Wird verwendet, um network.application_protocol abzuleiten.
ip principal.ip Der aus dem Feld ip extrahierte Wert, der mit grok geparst wurde. Wird in principal.ip zusammengeführt, wenn sie nicht mit der IP-Adresse identisch ist, die aus dem Feld Info extrahiert wurde.
Info, IP Addr principal.ip Der Wert wird aus dem Feld IP Addr im Feld Info extrahiert und mit grok geparst.
log additional.fields[].key: „log“
additional.fields[].value.string_value:
Wert, der aus dem Feld log@1588 im Rohlog extrahiert wird, wenn das Feld „KV_DATA“ vorhanden ist.
msg metadata.description Der aus dem Feld msg extrahierte Wert, der mit grok geparst wurde.
msgid additional.fields[].key: "msgid"
additional.fields[].value.string_value:
Wert, der aus dem Feld msgid@1588 im Rohlog extrahiert wird, wenn das Feld „KV_DATA“ vorhanden ist.
prin_host principal.hostname
principal.asset.hostname
Der Wert, der aus dem Grok-Muster extrahiert wurde, das dem Feld prin_host entspricht.
product_version metadata.product_version Der Wert, der aus dem Grok-Muster extrahiert wurde, das dem Feld product_version entspricht.
repeat_count additional.fields[].key: „repeat_count“
additional.fields[].value.string_value:
Der aus dem Feld msg extrahierte Wert, der mit grok geparst wurde.
role, user_role principal.user.attribute.roles[].name Der aus dem Feld role@1588 oder user_role extrahierte Wert. Wenn der Wert „admin“ ist, wird er durch „Admin“ ersetzt.
sequence_number additional.fields[].key: „sequence_number“
additional.fields[].value.string_value:
Der Wert, der aus dem Grok-Muster extrahiert wurde, das dem Feld sequence_number entspricht.
severity security_result.severity Der aus dem Feld severity extrahierte Wert, der mit grok geparst wurde. Entspricht den UDM-Schweregradwerten (INFORMATIONAL, ERROR, CRITICAL, MEDIUM).
Status security_result.summary Wert, der aus dem Feld Status extrahiert wurde.
switch_name additional.fields[].key: „switch_name“
additional.fields[].value.string_value:
Der Wert, der aus dem Grok-Muster extrahiert wurde, das dem Feld switch_name entspricht.
target_application target.application Der Wert, der aus dem Grok-Muster extrahiert wurde, das dem Feld target_application entspricht.
time additional.fields[].key: „time“
additional.fields[].value.string_value:
Wert, der aus dem Feld time im Feld kv_data3 extrahiert wurde.
timestamp metadata.event_timestamp.seconds Der aus dem Feld timestamp extrahierte Wert, der mit dem Datumsfilter geparst wurde.
user principal.user.userid
principal.user.user_display_name
Der aus dem Feld user oder user@1588 extrahierte Wert wird mit grok geparst. Kopiert von principal.hostname. Kopiert von principal.ip. Kopiert aus metadata.product_event_type oder basierend auf Bedingungen auf „STATUS_UPDATE“ festgelegt. Aus dem create_time.nanos des Logs kopiert. Wird durch die Parserlogik basierend auf den Werten von has_principal, has_target, has_userid und event_type bestimmt. Kann „SYSTEM_AUDIT_LOG_UNCATEGORIZED“, „STATUS_UPDATE“ oder „GENERIC_EVENT“ sein. Fest codiert auf „BROCADE_SWITCH“. Fest codiert auf „BROCADE“. Fest codiert auf „BROCADE_SWITCH“. Abgeleitet aus dem Feld interface oder auf „SSH“ gesetzt, wenn das Feld interface „SSH“ enthält.

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