Raccogliere i log di VMware ESXi

Supportato in:

Panoramica

Questo parser estrae i campi dai log syslog e JSON di VMware ESXi. Normalizza la varietà di formati dei log ESXi in una struttura comune, quindi compila i campi UDM in base ai valori estratti, inclusa la gestione di casi specifici per diversi servizi ESXi come crond, named e sshd utilizzando i file include.

Prima di iniziare

  • Assicurati di avere un'istanza Google SecOps.
  • Assicurati di disporre dell'accesso privilegiato a VMWare ESX.
  • Assicurati di avere Windows 2012 SP2 o versioni successive o un host Linux con systemd.
  • Se il servizio è in esecuzione dietro un proxy, assicurati che le porte del firewall siano aperte.

Recupera il file di autenticazione di importazione di Google SecOps

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Agenti di raccolta.
  3. Scarica il file di autenticazione dell'importazione.

Ottenere l'ID cliente Google SecOps

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Profilo.
  3. Copia e salva l'ID cliente dalla sezione Dettagli dell'organizzazione.

Installa BindPlane Agent

  1. Per l'installazione su Windows, esegui il seguente script: msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet.
  2. Per l'installazione su Linux, esegui il seguente script: sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh.
  3. Ulteriori opzioni di installazione sono disponibili in questa guida all'installazione.

Configurare l'agente BindPlane per importare i syslog e inviarli a Google SecOps

  1. Accedi al computer su cui è installato BindPlane.
  2. Modifica il file config.yaml come segue:

    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: 
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Riavviare BindPlane Agent per applicare le modifiche utilizzando il seguente comando: sudo systemctl bindplane restart

Regola firewall ESXi che consente syslog

  1. Vai a Networking > Regole firewall.
  2. Individua syslog nella colonna Nome.
  3. Fai clic su Modifica impostazioni.
  4. Aggiorna la porta tcp o udp che hai configurato in BindPlane.
  5. Fai clic su Salva.
  6. Mantieni selezionata la riga syslog.
  7. Seleziona Azioni > Attiva.

Esportare Syslog da VMware ESXi utilizzando vSphere Client

  1. Accedi all'host ESXi utilizzando vSphere Client.
  2. Vai a Gestisci > Sistema > Impostazioni avanzate.
  3. Individua la chiave Syslog.global.logHost nell'elenco.
  4. Seleziona la chiave e fai clic su Modifica opzione.
  5. Inserisci <protocol>://<destination_IP>:<port>
    • Sostituisci <protocol> con tcp (se hai configurato BindPlane per l'utilizzo di UDP, digita udp).
    • Sostituisci <destination_IP> con l'indirizzo IP del tuo agente BindPlane.
    • Sostituisci <port> con la porta configurata in precedenza in BindPlane.
  6. Fai clic su Salva.

(Facoltativo) Esportare Syslog da VMware ESXi tramite SSH

  1. Connettiti all'host ESXi tramite SSH.
  2. Utilizza il comando esxcli system syslog config set --loghost=<protocol>://<destination_IP>:<port>.
    • Sostituisci <protocol> con tcp (se hai configurato BindPlane per l'utilizzo di UDP, digita udp).
    • Sostituisci <destination_IP> con l'indirizzo IP del tuo agente BindPlane.
    • Sostituisci <port> con la porta configurata in precedenza in BindPlane.
  3. Riavvia il servizio syslog inserendo il comando /etc/init.d/syslog restart.

Tabella di mappatura UDM

Campo log Mappatura UDM Logica
@fields.alias event.idm.read_only_udm.principal.cloud.project.alias Mappato direttamente dal campo @fields.alias del log JSON.
@fields.company_name event.idm.read_only_udm.principal.user.company_name Mappato direttamente dal campo @fields.company_name del log JSON.
@fields.facility event.idm.read_only_udm.principal.resource.type Mappato direttamente dal campo @fields.facility del log JSON.
@fields.host event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Mappato direttamente dal campo @fields.host del log JSON.
@fields.privatecloud_id event.idm.read_only_udm.principal.cloud.project.id Mappato direttamente dal campo @fields.privatecloud_id del log JSON.
@fields.privatecloud_name event.idm.read_only_udm.principal.cloud.project.name Mappato direttamente dal campo @fields.privatecloud_name del log JSON.
@fields.procid event.idm.read_only_udm.principal.process.pid Mappato direttamente dal campo @fields.procid del log JSON.
@fields.region_id event.idm.read_only_udm.principal.location.country_or_region Mappato direttamente dal campo @fields.region_id del log JSON.
@fields.severity event.idm.read_only_udm.security_result.severity Mappato dal campo @fields.severity del log JSON. Se il valore è "info" o simile, viene mappato a "INFORMATIONAL".
@timestamp event.idm.read_only_udm.metadata.event_timestamp Analizzati e convertiti in un oggetto timestamp dal campo @timestamp del log utilizzando il filtro date.
adapter event.idm.read_only_udm.target.resource.name Mappato direttamente dal campo adapter del log non elaborato.
action event.idm.read_only_udm.security_result.action Mappato direttamente dal campo action del log non elaborato. Vengono utilizzati valori come "ALLOW" e "BLOCK".
action event.idm.read_only_udm.security_result.action_details Mappato direttamente dal campo action del log non elaborato. Vengono utilizzati valori come "Redirect".
administrative_domain event.idm.read_only_udm.principal.administrative_domain Mappato direttamente dal campo administrative_domain del log non elaborato.
agent.hostname event.idm.read_only_udm.intermediary.hostname Mappato direttamente dal campo agent.hostname del log JSON.
agent.id event.idm.read_only_udm.intermediary.asset.id Mappato direttamente dal campo agent.id del log JSON.
agent.name event.idm.read_only_udm.intermediary.asset.name Mappato direttamente dal campo agent.name del log JSON.
agent.type event.idm.read_only_udm.intermediary.asset.type Mappato direttamente dal campo agent.type del log JSON.
agent.version event.idm.read_only_udm.intermediary.asset.version Mappato direttamente dal campo agent.version del log JSON.
app_name event.idm.read_only_udm.principal.application Mappato direttamente dal campo app_name del log non elaborato.
app_protocol event.idm.read_only_udm.network.application_protocol Mappato direttamente dal campo app_protocol del log non elaborato. Se il valore corrisponde a "http" (senza distinzione tra maiuscole e minuscole), viene mappato a "HTTP".
application event.idm.read_only_udm.principal.application Mappato direttamente dal campo program del log JSON.
cmd event.idm.read_only_udm.target.process.command_line Mappato direttamente dal campo cmd del log non elaborato.
collection_time event.idm.read_only_udm.metadata.event_timestamp I nanosecondi del campo collection_time vengono aggiunti ai secondi del campo collection_time per creare event_timestamp.
data event.idm.read_only_udm.metadata.description Il messaggio di log non elaborato viene analizzato e le parti pertinenti vengono estratte per compilare il campo della descrizione.
descrip event.idm.read_only_udm.metadata.description Mappato direttamente dal campo descrip del log non elaborato.
dns.answers.data event.idm.read_only_udm.network.dns.answers.data Mappato direttamente dal campo dns.answers.data del log JSON.
dns.answers.ttl event.idm.read_only_udm.network.dns.answers.ttl Mappato direttamente dal campo dns.answers.ttl del log JSON.
dns.answers.type event.idm.read_only_udm.network.dns.answers.type Mappato direttamente dal campo dns.answers.type del log JSON.
dns.questions.name event.idm.read_only_udm.network.dns.questions.name Mappato direttamente dal campo dns.questions.name del log JSON.
dns.questions.type event.idm.read_only_udm.network.dns.questions.type Mappato direttamente dal campo dns.questions.type del log JSON.
dns.response event.idm.read_only_udm.network.dns.response Mappato direttamente dal campo dns.response del log JSON.
ecs.version event.idm.read_only_udm.metadata.product_version Mappato direttamente dal campo ecs.version del log JSON.
event_message event.idm.read_only_udm.metadata.description Mappato direttamente dal campo event_message del log JSON.
event_metadata event.idm.read_only_udm.principal.process.product_specific_process_id Il campo event_metadata viene analizzato per estrarre il valore opID, a cui viene anteposto "opID:" e mappato all'UDM.
event_type event.idm.read_only_udm.metadata.event_type Mappato direttamente dal campo event_type del log JSON.
filepath event.idm.read_only_udm.target.file.full_path Mappato direttamente dal campo filepath del log non elaborato.
fields.company_name event.idm.read_only_udm.principal.user.company_name Mappato direttamente dal campo fields.company_name del log JSON.
fields.facility event.idm.read_only_udm.principal.resource.type Mappato direttamente dal campo fields.facility del log JSON.
fields.host event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Mappato direttamente dal campo fields.host del log JSON.
fields.privatecloud_id event.idm.read_only_udm.principal.cloud.project.id Mappato direttamente dal campo fields.privatecloud_id del log JSON.
fields.privatecloud_name event.idm.read_only_udm.principal.cloud.project.name Mappato direttamente dal campo fields.privatecloud_name del log JSON.
fields.procid event.idm.read_only_udm.principal.process.pid Mappato direttamente dal campo fields.procid del log JSON.
fields.region_id event.idm.read_only_udm.principal.location.country_or_region Mappato direttamente dal campo fields.region_id del log JSON.
fields.severity event.idm.read_only_udm.security_result.severity Mappato dal campo fields.severity del log JSON. Se il valore è "info" o simile, viene mappato a "INFORMATIONAL".
host.architecture event.idm.read_only_udm.principal.asset.architecture Mappato direttamente dal campo host.architecture del log JSON.
host.containerized event.idm.read_only_udm.principal.asset.containerized Mappato direttamente dal campo host.containerized del log JSON.
host.hostname event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Mappato direttamente dal campo host.hostname del log JSON.
host.id event.idm.read_only_udm.principal.asset.id Mappato direttamente dal campo host.id del log JSON.
host.ip event.idm.read_only_udm.principal.ip, event.idm.read_only_udm.principal.asset.ip Mappato direttamente dal campo host.ip del log JSON.
host.mac event.idm.read_only_udm.principal.mac, event.idm.read_only_udm.principal.asset.mac Mappato direttamente dal campo host.mac del log JSON.
host.name event.idm.read_only_udm.principal.asset.name Mappato direttamente dal campo host.name del log JSON.
host.os.codename event.idm.read_only_udm.principal.asset.os.codename Mappato direttamente dal campo host.os.codename del log JSON.
host.os.family event.idm.read_only_udm.principal.asset.os.family Mappato direttamente dal campo host.os.family del log JSON.
host.os.kernel event.idm.read_only_udm.principal.asset.os.kernel Mappato direttamente dal campo host.os.kernel del log JSON.
host.os.name event.idm.read_only_udm.principal.asset.os.name Mappato direttamente dal campo host.os.name del log JSON.
host.os.platform event.idm.read_only_udm.principal.asset.os.platform Mappato direttamente dal campo host.os.platform del log JSON.
host.os.version event.idm.read_only_udm.principal.asset.os.version Mappato direttamente dal campo host.os.version del log JSON.
iporhost event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Mappato direttamente dal campo iporhost del log non elaborato.
iporhost event.idm.read_only_udm.principal.ip Mappato direttamente dal campo iporhost del log non elaborato se si tratta di un indirizzo IP.
iporhost1 event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Mappato direttamente dal campo iporhost1 del log non elaborato.
kv_data1 event.idm.read_only_udm.principal.process.product_specific_process_id Il campo kv_data1 viene analizzato per estrarre il valore opID o sub, a cui viene anteposto rispettivamente "opID:" o "sub:" e mappato all'UDM.
kv_msg event.idm.read_only_udm.additional.fields Il campo kv_msg viene analizzato come coppie chiave-valore e aggiunto all'array additional_fields nell'UDM.
kv_msg1 event.idm.read_only_udm.additional.fields Il campo kv_msg1 viene analizzato come coppie chiave-valore e aggiunto all'array additional_fields nell'UDM.
lbdn event.idm.read_only_udm.target.hostname Mappato direttamente dal campo lbdn del log non elaborato.
log.source.address event.idm.read_only_udm.observer.hostname Mappato direttamente dal campo log.source.address del log JSON, tenendo conto solo della parte del nome host.
log_event.original event.idm.read_only_udm.metadata.description Mappato direttamente dal campo event.original del log JSON.
log_level event.idm.read_only_udm.security_result.severity_details Mappato direttamente dal campo log_level del log JSON.
logstash.collect.host event.idm.read_only_udm.observer.hostname Mappato direttamente dal campo logstash.collect.host del log JSON.
logstash.collect.timestamp event.idm.read_only_udm.metadata.ingested_timestamp Analizzati e convertiti in un oggetto timestamp dal campo logstash.collect.timestamp del log utilizzando il filtro date.
logstash.ingest.host event.idm.read_only_udm.intermediary.hostname Mappato direttamente dal campo logstash.ingest.host del log JSON.
logstash.ingest.timestamp event.idm.read_only_udm.metadata.ingested_timestamp Analizzati e convertiti in un oggetto timestamp dal campo logstash.ingest.timestamp del log utilizzando il filtro date.
logstash.process.host event.idm.read_only_udm.intermediary.hostname Mappato direttamente dal campo logstash.process.host del log JSON.
logstash.process.timestamp event.idm.read_only_udm.metadata.ingested_timestamp Analizzati e convertiti in un oggetto timestamp dal campo logstash.process.timestamp del log utilizzando il filtro date.
log_type event.idm.read_only_udm.metadata.log_type Mappato direttamente dal campo log_type del log non elaborato.
message event.idm.read_only_udm.metadata.description Mappato direttamente dal campo message del log JSON.
message_to_process event.idm.read_only_udm.metadata.description Mappato direttamente dal campo message_to_process del log non elaborato.
metadata.event_type event.idm.read_only_udm.metadata.event_type Impostato inizialmente su "GENERIC_EVENT", quindi potenzialmente sovrascritto in base a service analizzato o altri contenuti del log. Possono essere valori come PROCESS_LAUNCH, NETWORK_CONNECTION, USER_LOGIN e così via.
metadata.product_event_type event.idm.read_only_udm.metadata.product_event_type Mappato direttamente dal campo process_id o prod_event_type del log non elaborato.
metadata.product_log_id event.idm.read_only_udm.metadata.product_log_id Mappato direttamente dal campo event_id del log non elaborato.
metadata.product_name event.idm.read_only_udm.metadata.product_name Imposta su "ESX".
metadata.product_version event.idm.read_only_udm.metadata.product_version Mappato direttamente dal campo version del log JSON.
metadata.vendor_name event.idm.read_only_udm.metadata.vendor_name Imposta su "VMWARE".
msg event.idm.read_only_udm.metadata.description Mappato direttamente dal campo msg del log non elaborato.
network.application_protocol event.idm.read_only_udm.network.application_protocol Imposta su "DNS" se service è "named", su "HTTPS" se la porta è 443 o su "HTTP" se service corrisponde a "http".app_protocol
network.direction event.idm.read_only_udm.network.direction Determinato dalle parole chiave nel log non elaborato, ad esempio "IN", "OUT", "->". Può essere INBOUND o OUTBOUND.
network.http.method event.idm.read_only_udm.network.http.method Mappato direttamente dal campo method del log non elaborato.
network.http.parsed_user_agent event.idm.read_only_udm.network.http.parsed_user_agent Analizzati dal campo useragent utilizzando il filtro convert.
network.http.referral_url event.idm.read_only_udm.network.http.referral_url Mappato direttamente dal campo prin_url del log non elaborato.
network.http.response_code event.idm.read_only_udm.network.http.response_code Mappato direttamente dal campo status_code del log non elaborato e convertito in un numero intero.
network.http.user_agent event.idm.read_only_udm.network.http.user_agent Mappato direttamente dal campo useragent del log non elaborato.
network.ip_protocol event.idm.read_only_udm.network.ip_protocol Determinato dalle parole chiave nel log non elaborato, ad esempio "TCP", "UDP".
network.received_bytes event.idm.read_only_udm.network.received_bytes Mappato direttamente dal campo rec_bytes del log non elaborato e convertito in un numero intero non firmato.
network.sent_bytes event.idm.read_only_udm.network.sent_bytes Estratto dal campo message_to_process del log non elaborato.
network.session_id event.idm.read_only_udm.network.session_id Mappato direttamente dal campo session del log non elaborato.
pid event.idm.read_only_udm.target.process.parent_process.pid Mappato direttamente dal campo pid del log non elaborato.
pid event.idm.read_only_udm.principal.process.pid Mappato direttamente dal campo pid del log JSON.
pid event.idm.read_only_udm.target.process.pid Mappato direttamente dal campo pid del log non elaborato.
port event.idm.read_only_udm.target.port Mappato direttamente dal campo port del log JSON.
principal.application event.idm.read_only_udm.principal.application Mappato direttamente dal campo app_name o service del log non elaborato.
principal.asset.hostname event.idm.read_only_udm.principal.asset.hostname Mappato direttamente dal campo principal_hostname o iporhost del log non elaborato.
principal.asset.ip event.idm.read_only_udm.principal.asset.ip Mappato direttamente dal campo syslog_ip del log non elaborato.
principal.hostname event.idm.read_only_udm.principal.hostname Mappato direttamente dal campo principal_hostname o iporhost del log non elaborato.
principal.ip event.idm.read_only_udm.principal.ip Mappato direttamente dal campo iporhost o syslog_ip del log non elaborato.
principal.port event.idm.read_only_udm.principal.port Mappato direttamente dal campo srcport del log non elaborato.
principal.process.command_line event.idm.read_only_udm.principal.process.command_line Mappato direttamente dal campo cmd del log non elaborato.
principal.process.parent_process.pid event.idm.read_only_udm.principal.process.parent_process.pid Mappato direttamente dal campo parent_pid del log non elaborato.
principal.process.pid event.idm.read_only_udm.principal.process.pid Mappato direttamente dal campo process_id del log non elaborato.
principal.process.product_specific_process_id event.idm.read_only_udm.principal.process.product_specific_process_id Estratto dal campo message_to_process del log non elaborato, di solito preceduto da "opID:".
principal.url event.idm.read_only_udm.principal.url Mappato direttamente dal campo prin_url del log non elaborato.
principal.user.company_name event.idm.read_only_udm.principal.user.company_name Mappato direttamente dal campo fields.company_name del log JSON.
principal.user.userid event.idm.read_only_udm.principal.user.userid Mappato direttamente dal campo USER del log non elaborato.
priority event.idm.read_only_udm.metadata.product_event_type Mappato direttamente dal campo priority del log non elaborato.
program event.idm.read_only_udm.principal.application Mappato direttamente dal campo program del log JSON.
qname event.idm.read_only_udm.network.dns.questions.name Mappato direttamente dal campo qname del log non elaborato.
response_data event.idm.read_only_udm.network.dns.answers.data Mappato direttamente dal campo response_data del log non elaborato.
response_rtype event.idm.read_only_udm.network.dns.answers.type Mappato direttamente dal campo response_rtype del log non elaborato. Viene estratto il tipo di record DNS numerico.
response_ttl event.idm.read_only_udm.network.dns.answers.ttl Mappato direttamente dal campo response_ttl del log non elaborato.
rtype event.idm.read_only_udm.network.dns.questions.type Mappato direttamente dal campo rtype del log non elaborato. Viene estratto il tipo di record DNS numerico.
security_result.action event.idm.read_only_udm.security_result.action Determinato dalle parole chiave o dallo stato nel log non elaborato. Può essere ALLOW o BLOCK.
security_result.action_details event.idm.read_only_udm.security_result.action_details Estratto dal messaggio del log non elaborato, fornisce più contesto sull'azione intrapresa.
security_result.category event.idm.read_only_udm.security_result.category Imposta su POLICY_VIOLATION se il log indica una corrispondenza con una regola firewall.
security_result.description event.idm.read_only_udm.security_result.description Estratto dal messaggio di log non elaborato, fornisce più contesto sul risultato di sicurezza.
security_result.rule_id event.idm.read_only_udm.security_result.rule_id Mappato direttamente dal campo rule_id del log non elaborato.
security_result.severity event.idm.read_only_udm.security_result.severity Determinato dalle parole chiave nel log non elaborato, ad esempio "info", "warning", "error". Può essere INFORMATIONAL, LOW, MEDIUM o HIGH.
security_result.severity_details event.idm.read_only_udm.security_result.severity_details Mappato direttamente dal campo severity o log.syslog.severity.name del log non elaborato.
security_result.summary event.idm.read_only_udm.security_result.summary Estratto dal messaggio di log non elaborato, fornisce un riepilogo conciso del risultato di sicurezza.
service event.idm.read_only_udm.principal.application Mappato direttamente dal campo service del log non elaborato.
source event.idm.read_only_udm.principal.hostname, event.idm.read_only_udm.principal.asset.hostname Mappato direttamente dal campo source del log non elaborato.
src.file.full_path event.idm.read_only_udm.src.file.full_path Estratto dal messaggio del log non elaborato.
src.hostname event.idm.read_only_udm.src.hostname Mappato direttamente dal campo src.hostname del log non elaborato.
src_ip event.idm.read_only_udm.principal.ip Mappato direttamente dal campo src_ip del log non elaborato.
src_mac_address event.idm.read_only_udm.principal.mac Mappato direttamente dal campo src_mac_address del log non elaborato.
srcport event.idm.read_only_udm.principal.port Mappato direttamente dal campo srcport del log non elaborato.
srcip event.idm.read_only_udm.principal.ip Mappato direttamente dal campo srcip del log non elaborato.
subtype event.idm.read_only_udm.metadata.event_type Mappato direttamente dal campo subtype del log non elaborato.
tags event.idm.read_only_udm.metadata.tags Mappato direttamente dal campo tags del log JSON.
target.application event.idm.read_only_udm.target.application Mappato direttamente dal campo target_application del log non elaborato.
target.file.full_path event.idm.read_only_udm.target.file.full_path Estratto dal messaggio del log non elaborato.
target.hostname event.idm.read_only_udm.target.hostname, event.idm.read_only_udm.target.asset.hostname Mappato direttamente dal campo target_hostname o iporhost del log non elaborato.
target.ip event.idm.read_only_udm.target.ip Mappato direttamente dal campo target_ip del log non elaborato.
target.mac event.idm.read_only_udm.target.mac Mappato direttamente dal campo target_mac_address del log non elaborato.
target.port event.idm.read_only_udm.target.port Mappato direttamente dal campo target_port del log non elaborato.
target.process.command_line event.idm.read_only_udm.target.process.command_line Mappato direttamente dal campo cmd del log non elaborato.
target.process.parent_process.pid event.idm.read_only_udm.target.process.parent_process.pid Mappato direttamente dal campo parent_pid del log non elaborato.
target.process.pid event.idm.read_only_udm.target.process.pid Mappato direttamente dal campo pid del log non elaborato.
target.process.product_specific_process_id event.idm.read_only_udm.target.process.product_specific_process_id Estratto dal campo message_to_process del log non elaborato, di solito preceduto da "opID:".
target.resource.name event.idm.read_only_udm.target.resource.name Mappato direttamente dal campo adapter del log non elaborato.
target.resource.resource_type event.idm.read_only_udm.target.resource.resource_type Imposta su VIRTUAL_MACHINE se il log indica un'operazione della VM.
target.resource.type event.idm.read_only_udm.target.resource.type Imposta su SETTING se il log indica una modifica dell'impostazione.
target.user.userid event.idm.read_only_udm.target.user.userid Mappato direttamente dal campo target_username o user1 del log non elaborato.
timestamp event.timestamp Analizzati e convertiti in un oggetto timestamp dal campo timestamp o data del log utilizzando il filtro date.
type event.idm.read_only_udm.additional.fields Il campo type del log viene aggiunto all'array additional_fields nell'UDM con la chiave "LogType".
user1 event.idm.read_only_udm.target.user.userid Mappato direttamente dal campo user1 del log non elaborato.
useragent event.idm.read_only_udm.network.http.user_agent Mappato direttamente dal campo useragent del log non elaborato.
vmw_cluster event.idm.read_only_udm.target.resource.name Mappato direttamente dal campo vmw_cluster del log non elaborato.
vmw_datacenter event.idm.read_only_udm.target.resource.name Mappato direttamente dal campo vmw_datacenter del log non elaborato.
vmw_host event.idm.read_only_udm.target.ip Mappato direttamente dal campo vmw_host del log non elaborato.
vmw_object_id event.idm.read_only_udm.target.resource.id Mappato direttamente dal campo vmw_object_id del log non elaborato.
vmw_product event.idm.read_only_udm.target.application Mappato direttamente dal campo vmw_product del log non elaborato.
vmw_vcenter event.idm.read_only_udm.target.cloud.availability_zone Mappato direttamente dal campo vmw_vcenter del log non elaborato.
vmw_vcenter_id event.idm.read_only_udm.target.cloud.availability_zone.id Mappato direttamente dal campo vmw_vcenter_id del log non elaborato.
vmw_vr_ops_appname event.idm.read_only_udm.target.application Mappato direttamente dal campo vmw_vr_ops_appname del log non elaborato.
vmw_vr_ops_clustername event.idm.read_only_udm.target.resource.name Mappato direttamente dal campo vmw_vr_ops_clustername del log non elaborato.
vmw_vr_ops_clusterrole event.idm.read_only_udm.target.resource.type Mappato direttamente dal campo vmw_vr_ops_clusterrole del log non elaborato.

Modifiche

2024-06-03

  • È stato aggiunto il supporto di un nuovo pattern di log JSON.

2024-05-09

  • È stato aggiunto il supporto per il nuovo pattern dei log "snmpd" e "Rhttpproxy".
  • "prod_event_type" è stato mappato a "metadata.product_event_type".
  • "context" è stato mappato a "additional.fields".

2024-02-07

  • Correzione di bug:
  • Sono stati aggiunti nuovi pattern Grok per supportare i log SYSLOG che vengono eliminati.
  • "newVersion" e "filter" sono stati mappati a "security_result.detection_fields".
  • "description" è stato mappato a "security_result.description".

2023-10-10

  • Sono stati modificati i seguenti nomi delle chiavi JSON utilizzando la funzione gsub:
  • "service" in "serv".
  • "event" a "log_event".
  • "@timestamp" a "timestamp".
  • "@version" a "version".
  • Sono stati aggiunti nuovi pattern Grok per gestire i log JSON con nuovi campi.
  • Il valore "timestamp" è stato associato ai formati "RFC 3339" e "TIMESTAMP_ISO8601".
  • "host.hostname" è stato mappato a "principal.hostname".
  • "host.ip" è stato mappato a "principal.ip".
  • "type", "serv.type", "log.syslog.facility.code", "log.syslog.facility.name", "log.syslog.severity.code", "log.syslog.severity.name" e "log.syslog.priority" sono stati mappati a "additional.fields".
  • "process.name" è stato mappato a "service".
  • "version" è stato mappato a "metadata.product_version".
  • "severity" è stato mappato a "security_result.severity".

2023-09-25

  • Sono stati aggiunti nuovi pattern Grok per gestire il nuovo tipo di SYSLOG per VMware ESXi.
  • "app_name" è stato mappato a "principal.application".
  • "severity" è stato mappato a "security_result.severity".

2023-07-17

  • Bug_fix: è stato mappato "username" a "target.user.userid".
  • "pid" è stato mappato a "principal.process.pid".
  • "description" è stato mappato a "metadata.description".

2023-06-12

  • Bug_fix: mappatura modificata di "session" per il tipo "vmauthd". È stato mappato a "network.session_id".

2022-09-01

  • Bug_fix: spazio dei nomi principal.namespace non mappato dal valore hardcoded.

2022-08-24

  • Miglioramento: è stato aggiunto un nuovo tipo di data per analizzare le date nel formato "aaaa-MM-ggTHH:mm:s".

2022-08-03

  • Miglioramento: sono stati aggiunti i pattern Grok per gestire i log con il servizio: hostd, vmon e vrops.

2022-07-26

  • Miglioramento:
  • Dove "service" è uguale a "Rhttpproxy"
  • Mappatura modificata per "principal.namespace" da "namespace" a "WALMART".
  • "namespace" è stato mappato a "additional.fields".
  • Dove "service" è uguale a "crond"
  • "parent_pid" è stato mappato a "target.process.parent_process.pid".

2022-07-05

  • Correzione di bug: il parser è stato aggiornato in modo che corrisponda al timestamp nel formato "aaaa-MM-ggThh:mm:ss.SSSS".

2022-06-13

  • Miglioramento: sono stati modificati/aggiunti i pattern Grok per gestire i log con il servizio: hostd, sendmail, sshd, sudo, vmcad, vmon, vpxd, vrops.
  • Correzione di bug: modifica di "metadata.event_type" per i log di "vmauthd" da "USER_LOGIN" a "GENERIC_EVENT".

2022-05-02

  • Correzione di bug: in base al requisito dell'utente, la mappatura target.hostname è stata modificata in principal.ip per i log il cui servizio è "Hostd".

2022-04-13

  • Miglioramento: sono stati analizzati i log con i seguenti nomi di servizio: hostd-probe, vmkernel, vmkwarning, Fdm, netcpa, root, hpHelper, snmpd e così via.
  • Ho mappato logstash.ingest.timestamp a metadata.ingested_timestamp,
  • logstash.ingest.host e logstash.process.host a intermediary.hostname,
  • logstash.collect.host a observer.hostname.