Raccogliere i log degli switch Aruba
Questo parser estrae i campi dai messaggi syslog degli switch Aruba utilizzando i pattern Grok e li mappa al modello UDM. Gestisce vari campi, tra cui timestamp, nomi host, nomi delle applicazioni, ID processo, ID evento e descrizioni, compilando i campi UDM pertinenti. Il tipo di evento viene impostato in base alla presenza di informazioni principali.
Prima di iniziare
- Assicurati di avere un'istanza Google Security Operations.
- Assicurati di avere Windows 2016 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.
- Assicurati di disporre dell'accesso privilegiato allo switch Aruba.
Recupera il file di autenticazione di importazione di Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Agenti di raccolta.
- Scarica il file di autenticazione dell'importazione.
Ottenere 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 BindPlane Agent
- 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
- Per l'installazione di 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
- Ulteriori opzioni di installazione sono disponibili in questa guida all'installazione.
Configurare l'agente BindPlane per importare i syslog e inviarli a Google SecOps
- Accedi al computer su cui è installato BindPlane.
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: aruba_switch raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - tcplog exporters: - chronicle/chronicle_w_labels
Riavvia l'agente BindPlane per applicare le modifiche:
sudo systemctl restart bindplane
Configura Syslog sullo switch Aruba
Connettiti allo switch Aruba tramite la console:
ssh admin@<switch-ip>
Connettiti allo switch Aruba tramite un'interfaccia web:
- Vai alla GUI web dello switch Aruba.
- Esegui l'autenticazione con le credenziali di amministratore dello switch.
Attiva Syslog utilizzando la configurazione dell'interfaccia a riga di comando:
Accedi alla modalità di configurazione globale:
configure terminal
Specifica il server syslog esterno:
logging <bindplane-ip>:<bindplane-port>
Sostituisci
<bindplane-ip>
e<bindplane-port>
con l'indirizzo del tuo agente bindplane.
(Facoltativo) Imposta il livello di gravità del logging:
logging severity <level>
(Facoltativo) Aggiungi un identificatore personalizzato dell'origine log (tag):
logging facility local5
Salva la configurazione:
write memory
Attiva Syslog utilizzando la configurazione dell'interfaccia web:
- Accedi all'interfaccia web dello switch Aruba.
- Vai a Sistema > Log > Syslog.
- Aggiungi i parametri del server syslog:
- Inserisci l'indirizzo IP di Bindplane.
- Inserisci la Porta Bindplane.
- Imposta il livello di gravità per controllare la modalità dettagliata dei log.
- Fai clic su Salva.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logica |
---|---|---|
app |
principal.application |
Il valore del campo app del log non elaborato viene assegnato direttamente a principal.application . |
description |
security_result.description |
Il valore del campo description del log non elaborato viene assegnato direttamente a security_result.description . |
event_id |
additional.fields.key |
La stringa "event_id" è assegnata a additional.fields.key . |
event_id |
additional.fields.value.string_value |
Il valore del campo event_id del log non elaborato viene assegnato direttamente a additional.fields.value.string_value . |
host |
principal.asset.hostname |
Il valore del campo host del log non elaborato viene assegnato direttamente a principal.asset.hostname . |
host |
principal.hostname |
Il valore del campo host del log non elaborato viene assegnato direttamente a principal.hostname . |
pid |
principal.process.pid |
Il valore del campo pid del log non elaborato viene assegnato direttamente a principal.process.pid . |
ts |
metadata.event_timestamp |
Il valore del campo ts del log non elaborato viene convertito in un timestamp e assegnato a metadata.event_timestamp . Il timestamp viene utilizzato anche per il campo timestamp di primo livello nell'UDM. metadata.event_type è impostato su "STATUS_UPDATE" perché la variabile principal_mid_present è impostata su "true" nel parser quando il campo host è presente nel log non elaborato. La stringa "ARUBA_SWITCH" è assegnata a metadata.product_name all'interno del parser. La stringa "ARUBA SWITCH" è assegnata a metadata.vendor_name all'interno del parser. Il parser tenta di estrarre e analizzare l'agente utente dal log non elaborato utilizzando client.userAgent.rawUserAgent . In caso di esito positivo, l'agente utente analizzato viene assegnato a network.http.parsed_user_agent . Tuttavia, poiché i log non elaborati forniti non contengono questo campo, è probabile che questo campo UDM sia vuoto. Il parser tenta di estrarre l'agente utente non elaborato dal log non elaborato utilizzando client.userAgent.rawUserAgent . In caso di esito positivo, l'agente utente non elaborato viene assegnato a network.http.user_agent . Tuttavia, poiché i log non elaborati forniti non contengono questo campo, è probabile che questo campo UDM sia vuoto. |
Modifiche
2024-04-18
- Parser appena creato.