NetApp ONTAP-Protokolle erfassen
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
systemdverwenden. - 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
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie SIEM-Einstellungen > Collection Agents auf.
- 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
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > „Profil“ auf.
- Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.
BindPlane-Agent installieren
Fenstereinbau
- Ö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" /quiet
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.sh
Zusätzliche Installationsressourcen
- Weitere Installationsoptionen finden Sie in diesem Installationsleitfaden.
BindPlane-Agent zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren
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,vioder Notepad).
- Suchen Sie die Datei
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_labelsErsetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.
Ersetzen Sie
<customer_id>durch die tatsächliche Kunden-ID.Aktualisieren Sie
/path/to/ingestion-authentication-file.jsonauf 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-agentUnter 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
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>Prüfen Sie die vorhandenen Ereignisfilter und Benachrichtigungen:
event filter show event notification showErstellen 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-unencryptedWeitere Optionen für -syslog-transport:
- udp-unencrypted (Standard)
- tcp-unencrypted
- tcp-encrypted (für TLS).
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
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 infoFilter 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 infoFilter 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 infoFilter 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 infoFilter 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 infoJeden 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-emsBenachrichtigungen ü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