VMware Networking and Security Virtualization (NSX) Manager-Logs erfassen
In diesem Dokument wird beschrieben, wie Sie die VMware Networking and Security Virtualization (NSX) Manager-Logs erfassen. Der Parser extrahiert Felder mithilfe verschiedener Grok-Muster basierend auf dem Nachrichtenformat. Anschließend werden Schlüssel/Wert-Paare und JSON-Daten geparst und es wird bedingte Logik angewendet, um die extrahierten Felder der UDM zuzuordnen. Dabei werden verschiedene Logformate verarbeitet und die Daten werden mit zusätzlichem Kontext angereichert.
Hinweise
- Sie benötigen eine Google Security Operations-Instanz.
- 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 benötigen Administratorzugriff auf VMware NSX.
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 so konfigurieren, dass Syslog-Daten aufgenommen und an Google SecOps gesendet werden
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).
- Suchen Sie die Datei
Bearbeiten Sie die Datei
config.yaml
so: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: vmware_nsx raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
Ersetzen 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.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-Konfiguration für NSX Edge
- Melden Sie sich im vSphere-Webclient an.
- Gehen Sie zu Networking & Security > NSX Edges.
- Wählen Sie die NSX Edge-Instanz aus, die Sie konfigurieren möchten.
- Gehen Sie zu den Syslog-Einstellungen:
- Für NSX 6.4.4 und höher:
- Gehen Sie zu Verwalten > Einstellungen > Geräteeinstellungen.
- Klicken Sie auf Einstellungen> Syslog-Konfiguration ändern.
- Für NSX 6.4.3 und früher:
- Gehen Sie zu Verwalten > Einstellungen > Konfiguration.
- Klicken Sie im Dialogfeld Details auf Ändern.
- Für NSX 6.4.4 und höher:
- Konfigurieren Sie die Syslog-Serverdetails:
- Server: Geben Sie die IP-Adresse oder den Hostnamen des Syslog-Servers (Bindplane) ein.
- Protokoll: Wählen Sie UDP oder TCP aus (je nach Bindplane-Konfiguration).
- Port: Geben Sie die Portnummer ein (abhängig von Ihrer Bindplane-Konfiguration).
- Klicken Sie auf OK, um die Einstellungen zu speichern.
Syslog-Konfiguration für NSX Manager
- Melden Sie sich mit Administratoranmeldedaten in der NSX Manager-Weboberfläche an:
https://<NSX-Manager-IP>
oderhttps://<NSX-Manager-Hostname>
.
- Gehe zu Geräteeinstellungen verwalten> Allgemein.
- Klicken Sie auf Bearbeiten, um die Syslog-Servereinstellungen zu konfigurieren.
- Geben Sie die Details des Syslog-Servers ein:
- Server: Geben Sie die IP-Adresse oder den Hostnamen des Syslog-Servers (Bindplane) ein.
- Protokoll: Wählen Sie UDP oder TCP aus (je nach Bindplane-Konfiguration).
- Port: Geben Sie die Portnummer ein (abhängig von Ihrer Bindplane-Konfiguration).
- Klicken Sie auf OK, um die Einstellungen zu speichern.
Syslog-Konfiguration für NSX Controller
- Melden Sie sich im vSphere-Webclient an.
- Gehen Sie zu Networking & Security > Installation and Upgrade > Management > NSX Controller Nodes.
- Wählen Sie den NSX Manager aus, der die Controllerknoten verwaltet.
- Klicken Sie auf Common Controller Attributes Edit (Allgemeine Controllerattribute bearbeiten).
- Klicken Sie im Dialogfeld Syslog-Server auf Hinzufügen:
- Geben Sie den Namen oder die IP-Adresse des Syslog-Servers ein.
- Wählen Sie das UDP-Protokoll aus (je nach Bindplane-Konfiguration).
- Legen Sie die Logebene fest (z. B.
INFO
).
- Klicken Sie auf OK, um die Einstellungen zu speichern.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
DST |
event.idm.read_only_udm.target.ip |
Die Ziel-IP-Adresse wird aus dem Feld DST im Rohlog extrahiert. |
ID |
event.idm.read_only_udm.metadata.product_log_id |
Die Produkt-Log-ID wird aus dem Feld ID im Rohlog extrahiert. |
MAC |
event.idm.read_only_udm.principal.mac |
Die MAC-Adresse wird aus dem Feld MAC im Rohlog extrahiert. |
ModuleName |
event.idm.read_only_udm.metadata.product_event_type |
Der Produktereignistyp wird aus dem Feld ModuleName im Rohlog extrahiert. |
Operation |
event.idm.read_only_udm.principal.resource.attribute.labels.value |
Der Vorgang wird aus dem Feld Operation im Rohlog extrahiert und als Label mit dem Schlüssel „Operation“ hinzugefügt. |
PROTO |
event.idm.read_only_udm.network.ip_protocol |
Das IP-Protokoll wird aus dem Feld PROTO im Rohlog extrahiert. |
RES |
event.idm.read_only_udm.target.resource.name |
Der Name der Zielressource wird aus dem Feld RES im Rohlog extrahiert. |
SRC |
event.idm.read_only_udm.principal.ip |
Die Quell-IP-Adresse wird aus dem Feld SRC im Rohlog extrahiert. |
SPT |
event.idm.read_only_udm.principal.port |
Der Quellport wird aus dem Feld SPT im Rohlog extrahiert. |
UserName |
event.idm.read_only_udm.principal.user.userid |
Die Nutzer-ID wird aus dem Feld UserName im Rohlog extrahiert. |
app_type |
event.idm.read_only_udm.principal.application |
Die Hauptanwendung wird aus dem Feld app_type im Rohlog extrahiert. |
application |
event.idm.read_only_udm.target.application |
Die Zielanwendung wird aus dem Feld application im Rohlog extrahiert. |
audit |
event.idm.read_only_udm.principal.resource.attribute.labels.value |
Der Audit-Wert wird aus dem Feld audit im Rohlog extrahiert und als Label mit dem Schlüssel „audit“ hinzugefügt. |
cancelTimeUTC |
event.idm.read_only_udm.principal.resource.attribute.last_update_time |
Der Zeitpunkt der letzten Aktualisierung wird aus dem Feld cancelTimeUTC im Rohprotokoll abgeleitet. |
client |
event.idm.read_only_udm.principal.ip oder event.idm.read_only_udm.principal.administrative_domain |
Wenn das Feld client eine IP-Adresse ist, wird es der primären IP-Adresse zugeordnet. Andernfalls wird sie der primären Verwaltungsdomain zugeordnet. |
comp |
event.idm.read_only_udm.principal.resource.attribute.labels.value |
Der Komponentenwert wird aus dem Feld comp im Rohlog extrahiert und als Label mit dem Schlüssel „Comp“ hinzugefügt. |
datetime |
event.idm.read_only_udm.metadata.event_timestamp |
Der Ereigniszeitstempel wird aus dem Feld datetime im Rohlog extrahiert. |
description |
event.idm.read_only_udm.metadata.description |
Die Beschreibung wird aus dem Feld description im Rohlog extrahiert. |
details |
event.idm.read_only_udm.principal.resource.attribute.labels |
Die Details werden aus dem Feld details im Rohlog extrahiert und als Labels hinzugefügt. |
direction |
event.idm.read_only_udm.network.direction |
Wenn das Feld direction „OUT“ ist, wird es „OUTBOUND“ zugeordnet. |
dst_ip |
event.idm.read_only_udm.target.ip |
Die Ziel-IP-Adresse wird aus dem Feld dst_ip im Rohlog extrahiert. |
DPT |
event.idm.read_only_udm.target.port |
Der Zielport wird aus dem Feld DPT im Rohlog extrahiert. |
errorCode |
event.idm.read_only_udm.security_result.detection_fields |
Der Fehlercode wird aus dem Feld errorCode im Rohlog extrahiert und als Erkennungsfeld hinzugefügt. |
eventType |
event.idm.read_only_udm.metadata.product_event_type |
Der Produktereignistyp wird aus dem Feld eventType im Rohlog extrahiert. |
filepath |
event.idm.read_only_udm.principal.process.file.full_path |
Der Dateipfad wird aus dem Feld filepath im Rohlog extrahiert. |
hostname |
event.idm.read_only_udm.principal.ip |
Der Hostname wird aus dem Feld hostname im Rohlog extrahiert und, falls es sich um eine IP-Adresse handelt, der primären IP-Adresse zugeordnet. |
kv_data |
Verschiedene UDM-Felder | Die Schlüssel/Wert-Paare in kv_data werden anhand ihrer Schlüssel verschiedenen UDM-Feldern zugeordnet. |
kv_data1 |
Verschiedene UDM-Felder | Die Schlüssel/Wert-Paare in kv_data1 werden anhand ihrer Schlüssel verschiedenen UDM-Feldern zugeordnet. |
kv_data2 |
Verschiedene UDM-Felder | Die Schlüssel/Wert-Paare in kv_data2 werden anhand ihrer Schlüssel verschiedenen UDM-Feldern zugeordnet. |
kv_data3 |
Verschiedene UDM-Felder | Die Schlüssel/Wert-Paare in kv_data3 werden anhand ihrer Schlüssel verschiedenen UDM-Feldern zugeordnet. |
kv_data4 |
Verschiedene UDM-Felder | Die Schlüssel/Wert-Paare in kv_data4 werden anhand ihrer Schlüssel verschiedenen UDM-Feldern zugeordnet. |
level |
event.idm.read_only_udm.security_result.severity |
Wenn das Feld level „INFO“ lautet, wird es „INFORMATIONAL“ zugeordnet. Wenn es „ERROR“ ist, wird es „ERROR“ zugeordnet. |
managedExternally |
event.idm.read_only_udm.principal.resource.attribute.labels.value |
Der Wert „managedExternally“ wird aus dem Feld managedExternally im Rohlog extrahiert und als Label mit dem Schlüssel „managedExternally“ hinzugefügt. |
message |
Verschiedene UDM-Felder | Das Nachrichtenfeld wird geparst, um verschiedene UDM-Felder zu extrahieren. |
message_data |
event.idm.read_only_udm.principal.resource.attribute.labels.value |
Die Nachrichtendaten werden aus dem Feld message_data im Rohlog extrahiert und als Label mit dem Schlüssel „message“ hinzugefügt. |
network_status |
event.idm.read_only_udm.additional.fields |
Der Netzwerkstatus wird aus dem Feld network_status im Rohlog extrahiert und als zusätzliches Feld mit dem Schlüssel „Network_Connection_Status“ hinzugefügt. |
new_value |
Verschiedene event.idm.read_only_udm.target -Felder |
Der neue Wert wird aus dem Feld new_value im Rohlog extrahiert und zum Ausfüllen verschiedener Zielfelder verwendet. |
node |
event.idm.read_only_udm.principal.resource.attribute.labels.value |
Der Knotenwert wird aus dem Feld node im Rohlog extrahiert und als Label mit dem Schlüssel „node“ hinzugefügt. |
old_value |
Verschiedene UDM-Felder | Der alte Wert wird aus dem Feld old_value im Rohlog extrahiert und zum Ausfüllen verschiedener UDM-Felder verwendet. |
payload |
Verschiedene UDM-Felder | Die Nutzlast wird aus dem Feld payload im Rohlog extrahiert und zum Ausfüllen verschiedener UDM-Felder verwendet. |
pid |
event.idm.read_only_udm.target.process.pid |
Die Prozess-ID wird aus dem Feld pid im Rohlog extrahiert. |
reqId |
event.idm.read_only_udm.metadata.product_log_id |
Die Produkt-Log-ID wird aus dem Feld reqId im Rohlog extrahiert. |
resourceId |
event.idm.read_only_udm.principal.resource.product_object_id |
Die Produktobjekt-ID wird aus dem Feld resourceId im Rohlog extrahiert. |
s2comp |
event.idm.read_only_udm.principal.resource.attribute.labels.value |
Der Wert „s2comp“ wird aus dem Feld s2comp im Rohlog extrahiert und als Label mit dem Schlüssel „s2comp“ hinzugefügt. |
ses |
event.idm.read_only_udm.network.session_id |
Die Sitzungs-ID wird aus dem Feld ses im Rohlog extrahiert. |
src_host |
event.idm.read_only_udm.principal.hostname |
Der Prinzipal-Hostname wird aus dem Feld src_host im Rohlog extrahiert. |
src_ip |
event.idm.read_only_udm.principal.ip |
Die Quell-IP-Adresse wird aus dem Feld src_ip im Rohlog extrahiert. |
src_ip1 |
event.idm.read_only_udm.principal.ip |
Die Quell-IP-Adresse wird aus dem Feld src_ip1 im Rohlog extrahiert. |
src_port |
event.idm.read_only_udm.principal.port |
Der Quellport wird aus dem Feld src_port im Rohlog extrahiert. |
startTimeUTC |
event.idm.read_only_udm.principal.resource.attribute.creation_time |
Die Erstellungszeit wird aus dem Feld startTimeUTC im Rohlog abgeleitet. |
subcomp |
event.idm.read_only_udm.network.application_protocol oder event.idm.read_only_udm.principal.resource.attribute.labels.value |
Wenn das Feld subcomp „http“ enthält, wird es „HTTP“ zugeordnet. Andernfalls wird sie als Label mit dem Schlüssel „Sub Comp“ hinzugefügt. |
tname |
event.idm.read_only_udm.principal.resource.attribute.labels.value |
Der Wert „tname“ wird aus dem Feld tname im Rohlog extrahiert und als Label mit dem Schlüssel „tname“ hinzugefügt. |
type |
event.idm.read_only_udm.metadata.product_event_type |
Der Produktereignistyp wird aus dem Feld type im Rohlog extrahiert. |
uid |
event.idm.read_only_udm.principal.user.userid |
Die Nutzer-ID wird aus dem Feld uid im Rohlog extrahiert. |
update |
event.idm.read_only_udm.principal.resource.attribute.labels.value |
Der Aktualisierungswert wird aus dem Feld update im Rohlog extrahiert und als Label mit dem Schlüssel „update“ hinzugefügt. |
user |
event.idm.read_only_udm.principal.user.user_display_name |
Der Anzeigename des Nutzers wird aus dem Feld user im Rohlog extrahiert. |
vmw_cluster |
event.idm.read_only_udm.target.resource.name |
Der Name der Zielressource wird aus dem Feld vmw_cluster im Rohlog extrahiert. |
vmw_datacenter |
event.idm.read_only_udm.target.resource.attribute.labels.value |
Der Wert „vmw_datacenter“ wird aus dem Feld vmw_datacenter im Rohlog extrahiert und als Label mit dem Schlüssel „vmw_datacenter“ hinzugefügt. |
vmw_host |
event.idm.read_only_udm.target.hostname oder event.idm.read_only_udm.target.ip |
Wenn das Feld vmw_host ein Hostname ist, wird es dem Zielhostnamen zugeordnet. Andernfalls wird sie, wenn es sich um eine IP-Adresse handelt, der Ziel-IP zugeordnet. |
vmw_object_id |
event.idm.read_only_udm.target.resource.product_object_id |
Die Produktobjekt-ID wird aus dem Feld vmw_object_id im Rohlog extrahiert. |
vmw_product |
event.idm.read_only_udm.target.application |
Die Zielanwendung wird aus dem Feld vmw_product im Rohlog extrahiert. |
vmw_vcenter |
event.idm.read_only_udm.target.cloud.availability_zone |
Die Verfügbarkeitszone wird aus dem Feld vmw_vcenter im Rohlog extrahiert. |
vmw_vcenter_id |
event.idm.read_only_udm.target.resource.attribute.labels.value |
Der Wert „vmw_vcenter_id“ wird aus dem Feld vmw_vcenter_id im Rohlog extrahiert und als Label mit dem Schlüssel „vmw_vcenter_id“ hinzugefügt. |
vmw_vr_ops_appname |
event.idm.read_only_udm.intermediary.application |
Die Vermittleranwendung wird aus dem Feld vmw_vr_ops_appname im Rohlog extrahiert. |
vmw_vr_ops_clustername |
event.idm.read_only_udm.intermediary.resource.name |
Der Name der Vermittlerressource wird aus dem Feld vmw_vr_ops_clustername im Rohlog extrahiert. |
vmw_vr_ops_clusterrole |
event.idm.read_only_udm.intermediary.resource.attribute.roles.name |
Der Rollenname der Vermittlerressource wird aus dem Feld vmw_vr_ops_clusterrole im Rohlog extrahiert. |
vmw_vr_ops_hostname |
event.idm.read_only_udm.intermediary.hostname |
Der Hostname des Vermittlers wird aus dem Feld vmw_vr_ops_hostname im Rohlog extrahiert. |
vmw_vr_ops_id |
event.idm.read_only_udm.intermediary.resource.product_object_id |
Die ID des Zwischenproduktobjekts wird aus dem Feld vmw_vr_ops_id im Rohlog extrahiert. |
vmw_vr_ops_logtype |
event.idm.read_only_udm.intermediary.resource.attribute.labels.value |
Der Wert „vmw_vr_ops_logtype“ wird aus dem Feld vmw_vr_ops_logtype im Rohlog extrahiert und als Label mit dem Schlüssel „vmw_vr_ops_logtype“ hinzugefügt. |
vmw_vr_ops_nodename |
event.idm.read_only_udm.intermediary.resource.attribute.labels.value |
Der Wert „vmw_vr_ops_nodename“ wird aus dem Feld vmw_vr_ops_nodename im Rohlog extrahiert und als Label mit dem Schlüssel „vmw_vr_ops_nodename“ hinzugefügt. Wird durch eine Reihe von bedingten Anweisungen auf Grundlage der Werte anderer Felder bestimmt. Mögliche Werte sind USER_LOGIN, NETWORK_CONNECTION, STATUS_UPDATE und GENERIC_EVENT. Fest codiert auf „VMWARE_NSX“. Fest codiert auf „VMWARE_NSX“. Fest codiert auf „VMWARE_NSX“. Auf „AUTHTYPE_UNSPECIFIED“ festgelegt, wenn Operation „LOGIN“ ist und target_details nicht leer ist oder wenn message „authentication failure“ enthält und application nicht leer ist. Auf „SSH“ festgelegt, wenn PROTO „ssh2“ ist, oder auf „HTTP“ festgelegt, wenn subcomp „http“ ist. Wird durch eine Reihe von bedingten Anweisungen auf Grundlage der Werte anderer Felder bestimmt. Mögliche Werte sind ALLOW und BLOCK. Wird auf „VIRTUAL_MACHINE“ gesetzt, wenn vmw_cluster nicht leer ist. |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten