NetApp ONTAP-Protokolle erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie die NetApp ONTAP-Logs über Syslog erfassen können. Der Parser extrahiert Felder aus Syslog-Nachrichten mithilfe regulärer Ausdrücke. Anschließend werden die extrahierten Felder den entsprechenden UDM-Feldern (Unified Data Model) zugeordnet. So werden Logrohdaten in ein strukturiertes Format für die Sicherheitsanalyse umgewandelt.

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.
  • Prüfen Sie, ob Sie Administratorzugriff auf den NetApp ONTAP-Cluster haben.
  • Achten Sie darauf, dass ONTAP mit dem Syslog-Server (Bindplane) kommunizieren kann.

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. 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 > „Profil“ auf.
  3. Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

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
    

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
    

Zusätzliche Installationsressourcen

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

  1. Greifen Sie auf die Konfigurationsdatei zu:

    • Suchen Sie die Datei config.yaml. Normalerweise befindet es sich unter Linux im Verzeichnis /etc/bindplane-agent/ oder unter Windows im Installationsverzeichnis.
    • Öffnen Sie die Datei mit einem Texteditor (z. B. nano, vi oder Notepad).
  2. Bearbeiten Sie die Datei config.yamlso:

    receivers:
        udplog:
            # 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: netapp_ontap
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Ersetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.

  4. Ersetzen Sie <customer_id> durch die tatsächliche Kunden-ID.

  5. Aktualisieren Sie /path/to/ingestion-authentication-file.json auf den Pfad, in dem die Authentifizierungsdatei im Abschnitt Google SecOps-Aufnahmeauthentifizierungsdatei abrufen gespeichert wurde.

Bindplane-Agent neu starten, um die Änderungen zu übernehmen

  • Führen Sie unter Linux den folgenden Befehl aus, um den Bindplane-Agent neu zu starten:

    sudo systemctl restart bindplane-agent
    
  • Unter Windows können Sie den Bindplane-Agent entweder über die Konsole Dienste neu starten oder den folgenden Befehl eingeben:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Syslog-Ziel in ONTAP konfigurieren

  1. Greifen Sie über SSH auf den ONTAP-Cluster zu und ersetzen Sie <ontap-cluster-ip> durch die Verwaltungs-IP Ihres ONTAP-Clusters:

    ssh admin@<ontap-cluster-ip>
    
  2. Prüfen Sie die vorhandenen Ereignisfilter und Benachrichtigungen:

    event filter show
    event notification show
    
  3. Erstellen Sie ein Syslog-Ziel und ersetzen Sie <syslog-server-ip> und <syslog-server-port> durch die Details Ihres Syslog-Servers (Bindplane):

    event notification destination create -name syslog-ems -syslog <syslog-server-ip> -syslog-port <syslog-server-port> -syslog-transport udp-unencrypted
    
  4. Weitere Optionen für -syslog-transport:

    • udp-unencrypted (Standard)
    • tcp-unencrypted
    • tcp-encrypted (für TLS).
  5. Bestätigen Sie das Syslog-Ziel:

    event notification destination show
    

Vorhandene Ereignisfilter konfigurieren

  • Standardfilter mit dem Syslog-Ziel verknüpfen:

    event notification create -filter-name no-info-debug-events -destinations syslog-ems
    event notification create -filter-name default-trap-events -destinations syslog-ems
    

Optional: Benutzerdefinierte Filter erstellen und konfigurieren

  1. Filter für Authentifizierungsereignisse (An- und Abmeldungen): Erfasst Logs, deren Beschreibung „Anmelden“ oder „Abmelden“ enthält:

    event filter create -filter-name auth_events
    event filter rule add -filter-name auth_events -type include -message-name *login* -severity info
    event filter rule add -filter-name auth_events -type include -message-name *logout* -severity info
    
  2. Filter für Sicherheitserkennungsfelder: Erfasst Logs zu nmsdk_language, nmsdk_platform, nmsdk_version und netapp_version:

    event filter create -filter-name security_fields
    event filter rule add -filter-name security_fields -type include -message-name *nmsdk_language* -severity info
    event filter rule add -filter-name security_fields -type include -message-name *nmsdk_platform* -severity info
    event filter rule add -filter-name security_fields -type include -message-name *nmsdk_version* -severity info
    event filter rule add -filter-name security_fields -type include -message-name *netapp_version* -severity info
    
  3. Filter für Logs nach Schweregrad: Erfasst Logs mit dem Schweregrad „Informationen“:

    event filter create -filter-name severity_info
    event filter rule add -filter-name severity_info -type include -message-name * -severity info
    
  4. Filter für Netzwerkaktivitäten: Erfasst Logs mit src_ip und src_port:

    event filter create -filter-name network_activity
    event filter rule add -filter-name network_activity -type include -message-name *src_ip* -severity info
    event filter rule add -filter-name network_activity -type include -message-name *src_port* -severity info
    
  5. Filter für URL-Zielprotokolle: Erfasst Protokolle mit URL-Informationen:

    event filter create -filter-name url_target
    event filter rule add -filter-name url_target -type include -message-name *url* -severity info
    
  6. Jeden Filter auf das Syslog-Ziel anwenden:

    event notification create -filter-name auth_events -destinations syslog-ems
    event notification create -filter-name security_fields -destinations syslog-ems
    event notification create -filter-name severity_info -destinations syslog-ems
    event notification create -filter-name network_activity -destinations syslog-ems
    event notification create -filter-name url_target -destinations syslog-ems
    
  7. Benachrichtigungen überprüfen:

    event notification show
    

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
Code Nicht zugeordnet
description metadata.description Aus der Log-Nachricht mit einem Grok-Muster extrahiert. Nur vorhanden, wenn die Beschreibung „Abmelden“ oder „Anmelden“ lautet.
intermediary_host intermediary.hostname Aus der Log-Nachricht mit einem Grok-Muster extrahiert.
nmsdk_language security_result.detection_fields.value Aus der Log-Nachricht mit einem Grok-Muster extrahiert. Dieser Wert wird einem „detection_fields“-Objekt mit „key“ = „nmsdk_language“ als „value“ hinzugefügt.
nmsdk_platform security_result.detection_fields.value Aus der Log-Nachricht mit einem Grok-Muster extrahiert. Dieser Wert wird als „value“ einem „detection_fields“-Objekt mit „key“ = „nmsdk_platform“ hinzugefügt.
nmsdk_version security_result.detection_fields.value Aus der Log-Nachricht mit einem Grok-Muster extrahiert. Dieser Wert wird einem „detection_fields“-Objekt mit „key“ = „nmsdk_version“ als „value“ hinzugefügt.
netapp_version security_result.detection_fields.value Aus der Log-Nachricht mit einem Grok-Muster extrahiert. Dieser Wert wird als „value“ einem detection_fields-Objekt mit „key“ = „netapp_version“ hinzugefügt.
product_event_type metadata.product_event_type Aus der Log-Nachricht mit einem Grok-Muster extrahiert.
security_result.summary security_result.summary Aus der Log-Nachricht mit einem Grok-Muster extrahiert.
die Ausprägung security_result.severity Auf „INFORMATIONAL“ setzen, wenn die Schwere „info“ (Groß-/Kleinschreibung wird nicht berücksichtigt) ist.
src_ip principal.ip Aus der Log-Nachricht mit einem Grok-Muster extrahiert.
src_port principal.port Aus der Log-Nachricht mit einem Grok-Muster extrahiert.
Status security_result.summary Aus der Log-Nachricht mit einem Grok-Muster extrahiert.
ts metadata.event_timestamp.seconds Wird aus der Lognachricht mithilfe eines Grok-Musters extrahiert und in einen Zeitstempel umgewandelt.
URL target.url Aus der Log-Nachricht mit einem Grok-Muster extrahiert.
Nutzer target.user.userid Aus der Log-Nachricht mit einem Grok-Muster extrahiert.
extensions.auth.type Auf „AUTHTYPE_UNSPECIFIED“ festlegen, wenn die Beschreibung „Abmelden“ oder „Anmelden“ lautet.
metadata.event_type Auf „USER_LOGIN“ festgelegt, wenn die Beschreibung „Anmelden“ lautet.
metadata.event_type Auf „USER_LOGOUT“ festgelegt, wenn die Beschreibung „Abmelden“ lautet.
metadata.event_type Auf „SCAN_UNCATEGORIZED“ festlegen, wenn die Beschreibung nicht „Anmelden“ oder „Abmelden“ lautet.
metadata.log_type Legen Sie diesen Wert auf „NETAPP_ONTAP“ fest.
metadata.product_name Legen Sie diesen Wert auf „NETAPP_ONTAP“ fest.
metadata.vendor_name Legen Sie diesen Wert auf „NETAPP_ONTAP“ fest.
target.platform Wird auf „WINDOWS“ festgelegt, wenn „nmsdk_platform“ „windows“ enthält (Groß-/Kleinschreibung wird nicht beachtet).

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