Raccogliere i log di Veritas NetBackup
Questo documento spiega come importare i log di Veritas NetBackup in Google Security Operations utilizzando Bindplane. Il parser estrae i campi dai messaggi syslog utilizzando i pattern grok, quindi li mappa al modello UDM (Unified Data Model). Gestisce vari formati di log, tra cui coppie chiave-valore e JSON, ed esegue trasformazioni dei dati per una rappresentazione coerente nel modello UDM.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Istanza Google SecOps
- Windows 2016 o versioni successive o un host Linux con
systemd
- Se l'esecuzione avviene tramite un proxy, assicurati che le porte del firewall siano aperte.
- Accesso con privilegi all'appliance Veritas NetBackup
Recuperare il file di autenticazione importazione di Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Agenti di raccolta.
- Scarica il file di autenticazione importazione. Salva il file in modo sicuro sul sistema in cui verrà installato Bindplane.
Recuperare l'ID cliente Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Profilo.
- Copia e salva l'ID cliente dalla sezione Dettagli dell'organizzazione.
Installa l'agente Bindplane
Installa l'agente Bindplane sul sistema operativo Windows o Linux seguendo le istruzioni riportate di seguito.
Installazione di Windows
- Apri il prompt dei comandi o PowerShell come amministratore.
Esegui questo comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Installazione di Linux
- Apri un terminale con privilegi root o sudo.
Esegui questo comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Risorse aggiuntive per l'installazione
Per ulteriori opzioni di installazione, consulta la guida all'installazione.
Configura l'agente Bindplane per importare Syslog e inviarli a Google SecOps
- Accedi al file di configurazione:
- Individua il file
config.yaml
. In genere, si trova nella directory/etc/bindplane-agent/
su Linux o nella directory di installazione su Windows. - Apri il file utilizzando un editor di testo (ad esempio
nano
,vi
o Blocco note).
- Individua il file
Modifica il file
config.yaml
come segue:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'VERITAS_NETBACKUP' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
- Sostituisci la porta e l'indirizzo IP in base alle esigenze della tua infrastruttura.
- Sostituisci
<customer_id>
con l'ID cliente effettivo. - Aggiorna
/path/to/ingestion-authentication-file.json
al percorso in cui è stato salvato il file di autenticazione nella sezione Recupera il file di autenticazione per l'importazione di Google SecOps.
Riavvia l'agente Bindplane per applicare le modifiche
Per riavviare l'agente Bindplane in Linux, esegui questo comando:
sudo systemctl restart bindplane-agent
Per riavviare l'agente Bindplane in Windows, puoi utilizzare la console Servizi o inserire il seguente comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configurare Syslog per Veritas NetBackup
- Accedi alla UI web di NetBackup Appliance Shell.
- Vai a Principale > Impostazioni > LogForwarding.
- Seleziona Attiva.
- Fornisci i seguenti dettagli di configurazione:
- Nome del server o indirizzo IP: inserisci l'indirizzo IP dell'agente Bindplane.
- Porta server: inserisci il numero di porta dell'agente Bindplane (ad esempio,
514
). - Protocollo: seleziona UDP o TCP, a seconda della configurazione dell'agente Bindplane.
- Intervallo: mantieni il valore predefinito 15. Se imposti l'intervallo su
0
, l'appliance inoltra continuamente i syslog al server di destinazione. - TLS: seleziona No.
- Inserisci Yes (Sì) per completare e salvare.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
data |
additional.fields[0].value.string_value |
La data e l'ora del messaggio di log non elaborato, estratte utilizzando grok e formattate come "MM/GG/AA HH:MM:SS". |
data |
metadata.description |
La parte della descrizione del messaggio estratta utilizzando grok. Esempio: "(OdbcStatement::ExecDirect:962)::Error". |
data |
metadata.product_event_type |
Il tipo di evento prodotto estratto utilizzando grok. Esempio: "Error::83". |
data |
principal.asset.hostname |
Il nome host estratto dal messaggio syslog utilizzando grok. |
data |
principal.file.full_path |
Il percorso del file PEM estratto dai dati JSON nel log. |
data |
principal.hostname |
Il nome host estratto dal messaggio syslog utilizzando grok. |
data |
security_result.detection_fields[0].key |
La chiave "SqlState" viene aggiunta se il campo SqlState è presente nel log non elaborato dopo l'analisi grok. |
data |
security_result.detection_fields[0].value |
Il valore di SqlState estratto dal messaggio di log non elaborato utilizzando grok e kv. |
data |
security_result.detection_fields[1].key |
La chiave "NativeError" viene aggiunta se il campo NativeError è presente nel log non elaborato dopo l'analisi Grok. |
data |
security_result.detection_fields[1].value |
Il valore di NativeError estratto dal messaggio di log non elaborato utilizzando grok e kv. |
data |
security_result.detection_fields[2].key |
La chiave "sev" viene aggiunta se il campo sev è presente nel log non elaborato dopo l'analisi grok. |
data |
security_result.detection_fields[2].value |
Il valore di sev estratto dai dati JSON nel log. |
data |
security_result.severity |
Impostato su "LOW" se il campo sev (estratto da JSON) è "normal". |
data |
security_result.summary |
Il messaggio o il riepilogo dell'errore estratto dal messaggio di log non elaborato utilizzando grok. La chiave "date_time" è hardcoded nel parser. La chiave "thread" viene aggiunta se il campo thread è presente nel log non elaborato dopo l'analisi grok. |
data |
additional.fields[1].value.string_value |
Il valore di thread estratto dai dati JSON nel log. La chiave "m" viene aggiunta se il campo m è presente nel log non elaborato dopo l'analisi grok. |
data |
additional.fields[2].value.string_value |
Il valore di m estratto dai dati JSON nel log. La chiave "fn" viene aggiunta se il campo fn è presente nel log non elaborato dopo l'analisi grok. |
data |
additional.fields[3].value.string_value |
Il valore di fn estratto dai dati JSON nel log. |
collection_time |
metadata.event_timestamp |
Il timestamp del campo collection_time nel log non elaborato. Impostato su "STATUS_UPDATE" se è presente un nome host principale, altrimenti "GENERIC_EVENT". Codificato in modo permanente su "Veritas Netbackup". Codificato in modo permanente su "VERITAS NETBACKUP". |
collection_time |
timestamp |
Il timestamp del campo collection_time nel log non elaborato. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.