VMware Networking and Security Virtualization (NSX) Manager-Logs erfassen

Unterstützt in:

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

  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 so konfigurieren, dass Syslog-Daten aufgenommen und an Google SecOps gesendet werden

  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: vmware_nsx
            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-Konfiguration für NSX Edge

  1. Melden Sie sich im vSphere-Webclient an.
  2. Gehen Sie zu Networking & Security > NSX Edges.
  3. Wählen Sie die NSX Edge-Instanz aus, die Sie konfigurieren möchten.
  4. Gehen Sie zu den Syslog-Einstellungen:
    1. Für NSX 6.4.4 und höher:
      • Gehen Sie zu Verwalten > Einstellungen > Geräteeinstellungen.
      • Klicken Sie auf Einstellungen> Syslog-Konfiguration ändern.
    2. Für NSX 6.4.3 und früher:
      • Gehen Sie zu Verwalten > Einstellungen > Konfiguration.
      • Klicken Sie im Dialogfeld Details auf Ändern.
  5. 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).
  6. Klicken Sie auf OK, um die Einstellungen zu speichern.

Syslog-Konfiguration für NSX Manager

  1. Melden Sie sich mit Administratoranmeldedaten in der NSX Manager-Weboberfläche an:
    • https://<NSX-Manager-IP> oder https://<NSX-Manager-Hostname>.
  2. Gehe zu Geräteeinstellungen verwalten> Allgemein.
  3. Klicken Sie auf Bearbeiten, um die Syslog-Servereinstellungen zu konfigurieren.
  4. 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).
  5. Klicken Sie auf OK, um die Einstellungen zu speichern.

Syslog-Konfiguration für NSX Controller

  1. Melden Sie sich im vSphere-Webclient an.
  2. Gehen Sie zu Networking & Security > Installation and Upgrade > Management > NSX Controller Nodes.
  3. Wählen Sie den NSX Manager aus, der die Controllerknoten verwaltet.
  4. Klicken Sie auf Common Controller Attributes Edit (Allgemeine Controllerattribute bearbeiten).
  5. Klicken Sie im Dialogfeld Syslog-Server auf Hinzufügen:
    1. Geben Sie den Namen oder die IP-Adresse des Syslog-Servers ein.
    2. Wählen Sie das UDP-Protokoll aus (je nach Bindplane-Konfiguration).
    3. Legen Sie die Logebene fest (z. B. INFO).
  6. 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