Raccogli i log dello switch Cisco
Versione parser: 27.0
Questo documento spiega come importare i log degli switch Cisco in Google Security Operations utilizzando l'agente Bindplane.
Gli switch Cisco generano messaggi syslog per modifiche dello stato della porta, eventi spanning tree, corrispondenze ACL, autenticazione e operazioni di sistema. Il parser estrae i campi utilizzando i pattern grok e li mappa al modello Unified Data Model (UDM).
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Un'istanza Google SecOps
- Windows Server 2016 o versioni successive oppure host Linux con
systemd - Connettività di rete tra l'agente Bindplane e lo switch Cisco
- Se l'agente viene eseguito dietro un proxy, assicurati che le porte del firewall siano aperte in base ai requisiti dell'agente Bindplane
- Accesso privilegiato alla CLI dello switch Cisco
Recuperare il file di autenticazione dell'importazione di Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Agenti di raccolta.
- Scarica il file di autenticazione dell'acquisizione.
Salva il file in modo sicuro sul sistema in cui verrà installato l'agente 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 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" /quietAttendi il completamento dell'installazione.
Verifica l'installazione eseguendo:
sc query observiq-otel-collectorIl servizio dovrebbe essere visualizzato come IN ESECUZIONE.
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.shAttendi il completamento dell'installazione.
Verifica l'installazione eseguendo:
sudo systemctl status observiq-otel-collectorIl servizio dovrebbe essere visualizzato come attivo (in esecuzione).
Risorse aggiuntive per l'installazione
Per ulteriori opzioni di installazione e risoluzione dei problemi, consulta la guida all'installazione dell'agente Bindplane.
Configura l'agente Bindplane per importare syslog e inviarli a Google SecOps
Individua il file di configurazione
Linux:
sudo nano /etc/bindplane-agent/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Modifica il file di configurazione
Sostituisci l'intero contenuto di
config.yamlcon la seguente configurazione:receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/cisco_switch: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: CISCO_SWITCH raw_log_field: body service: pipelines: logs/cisco_switch_to_chronicle: receivers: - udplog exporters: - chronicle/cisco_switch
Parametri di configurazione
Sostituisci i seguenti segnaposto:
Configurazione del ricevitore:
listen_address: Indirizzo IP e porta da ascoltare:0.0.0.0per ascoltare su tutte le interfacce (consigliato)- La porta
514è la porta syslog standard (richiede l'accesso root su Linux; utilizza1514per l'accesso non root)
Configurazione dell'esportatore:
creds_file_path: percorso completo del file di autenticazione dell'acquisizione:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
customer_id: ID cliente copiato dalla console Google SecOpsendpoint: URL endpoint regionale:- Stati Uniti:
malachiteingestion-pa.googleapis.com - Europa:
europe-malachiteingestion-pa.googleapis.com - Asia:
asia-southeast1-malachiteingestion-pa.googleapis.com - Per un elenco completo, vedi Endpoint regionali.
- Stati Uniti:
Salvare il file di configurazione
- Dopo la modifica, salva il file:
- Linux: premi
Ctrl+O, poiEntere infineCtrl+X. - Windows: fai clic su File > Salva.
- Linux: premi
Riavvia l'agente Bindplane per applicare le modifiche
Per riavviare l'agente Bindplane in Linux, esegui questo comando:
sudo systemctl restart observiq-otel-collectorVerifica che il servizio sia in esecuzione:
```bash sudo systemctl status observiq-otel-collector ```Controlla i log per individuare eventuali errori:
```bash sudo journalctl -u observiq-otel-collector -f ```
Per riavviare l'agente Bindplane in Windows, scegli una delle seguenti opzioni:
Prompt dei comandi o PowerShell come amministratore:
net stop observiq-otel-collector && net start observiq-otel-collectorConsole dei servizi:
- Premi
Win+R, digitaservices.msce premi Invio. - Individua observIQ OpenTelemetry Collector.
- Fai clic con il tasto destro del mouse e seleziona Riavvia.
Verifica che il servizio sia in esecuzione:
sc query observiq-otel-collectorControlla i log per individuare eventuali errori:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- Premi
Configurare syslog su uno switch Cisco
- Accedi allo switch Cisco.
Aumento dei privilegi:
enablePassa alla modalità di configurazione:
conf tConfigura Syslog:
logging host <BINDPLANE_IP> transport <tcp/udp> port <PORT> logging source-interface <INTERFACE>- Sostituisci
<BINDPLANE_IP>con l'indirizzo IP dell'agente Bindplane. - Sostituisci
<tcp/udp>con il protocollo di ascolto configurato (ad esempio,udp). - Sostituisci
<INTERFACE>con l'ID interfaccia Cisco.
- Sostituisci
Imposta il livello di priorità:
logging trap Informational logging console Informational logging severity InformationalImposta la struttura syslog:
logging facility local6Attiva i timestamp:
service timestamps log datetimeSalva ed esci.
Salva la configurazione per evitare di perderla al riavvio:
copy running-config startup-config
Tabella di mappatura UDM
| Campo log | mapping UDM | Logica |
|---|---|---|
| azione | security_result.action_details | Il valore di questo campo deriva dal campo action nel log non elaborato. |
| giorno | ||
| descrizione | metadata.description | Il valore di questo campo deriva dal campo description nel log non elaborato. |
| descrizione | security_result.description | Il valore di questo campo deriva dal campo description nel log non elaborato. |
| destination_ip | target.asset.ip | Il valore di questo campo deriva dal campo destination_ip nel log non elaborato. |
| destination_ip | target.ip | Il valore di questo campo deriva dal campo destination_ip nel log non elaborato. |
| destination_port | target.port | Il valore di questo campo deriva dal campo destination_port nel log non elaborato. |
| dispositivo | principal.asset.hostname | Il valore di questo campo deriva dal campo device nel log non elaborato. |
| dispositivo | principal.hostname | Il valore di questo campo deriva dal campo device nel log non elaborato. |
| dispositivo | target.asset.hostname | Il valore di questo campo deriva dal campo device nel log non elaborato. |
| dispositivo | target.hostname | Il valore di questo campo deriva dal campo device nel log non elaborato. |
| device_ip | principal.asset.ip | Il valore di questo campo deriva dal campo device_ip nel log non elaborato. |
| device_ip | principal.ip | Il valore di questo campo deriva dal campo device_ip nel log non elaborato. |
| device_ip | target.asset.ip | Il valore di questo campo deriva dal campo device_ip nel log non elaborato. |
| device_ip | target.ip | Il valore di questo campo deriva dal campo device_ip nel log non elaborato. |
| struttura | principal.resource.type | Il valore di questo campo deriva dal campo facility nel log non elaborato. |
| header_data | metadata.product_log_id | Il valore di questo campo deriva dal campo header_data nel log non elaborato. |
| header_data | target.asset.ip | Il valore di questo campo deriva dal campo header_data nel log non elaborato. |
| header_data | target.ip | Il valore di questo campo deriva dal campo header_data nel log non elaborato. |
| nome host | principal.asset.hostname | Il valore di questo campo deriva dal campo hostname nel log non elaborato. |
| nome host | principal.hostname | Il valore di questo campo deriva dal campo hostname nel log non elaborato. |
| ip | principal.asset.ip | Il valore di questo campo deriva dal campo ip nel log non elaborato. |
| ip | principal.ip | Il valore di questo campo deriva dal campo ip nel log non elaborato. |
| ip_address | principal.asset.ip | Il valore di questo campo deriva dal campo ip_address nel log non elaborato. |
| ip_address | principal.ip | Il valore di questo campo deriva dal campo ip_address nel log non elaborato. |
| ip_protocol | network.ip_protocol | Il valore di questo campo deriva dal campo ip_protocol nel log non elaborato. |
| mac | principal.mac | Il valore di questo campo deriva dal campo mac nel log non elaborato. |
| mnemonico | network.dhcp.opcode | Il valore di questo campo deriva dal campo mnemonic nel log non elaborato. |
| mnemonico | metadata.product_event_type | Il valore di questo campo deriva dal campo mnemonic nel log non elaborato. |
| mese | ||
| p_ip | principal.asset.ip | Il valore di questo campo deriva dal campo p_ip nel log non elaborato. |
| p_ip | principal.ip | Il valore di questo campo deriva dal campo p_ip nel log non elaborato. |
| porta | target.port | Il valore di questo campo deriva dal campo port nel log non elaborato. |
| priorità | ||
| protocollo | network.ip_protocol | Il valore di questo campo deriva dal campo protocol nel log non elaborato. |
| motivo | ||
| regola | security_result.rule_id | Il valore di questo campo deriva dal campo rule nel log non elaborato. |
| sec_result_action | security_result.action | Il valore di questo campo deriva dal campo sec_result_action nel log non elaborato. |
| gravità | ||
| origine | principal.asset.ip | Il valore di questo campo deriva dal campo source nel log non elaborato. |
| origine | principal.ip | Il valore di questo campo deriva dal campo source nel log non elaborato. |
| source_ip | network.dhcp.ciaddr | Il valore di questo campo deriva dal campo source_ip nel log non elaborato. |
| source_ip | principal.asset.ip | Il valore di questo campo deriva dal campo source_ip nel log non elaborato. |
| source_ip | principal.ip | Il valore di questo campo deriva dal campo source_ip nel log non elaborato. |
| source_mac | network.dhcp.chaddr | Il valore di questo campo deriva dal campo source_mac nel log non elaborato. |
| source_port | principal.port | Il valore di questo campo deriva dal campo source_port nel log non elaborato. |
| riepilogo | security_result.summary | Il valore di questo campo deriva dal campo summary nel log non elaborato. |
| tempo | ||
| fuso orario | ||
| utente | principal.user.userid | Il valore di questo campo deriva dal campo user nel log non elaborato. |
| utente | target.user.userid | Il valore di questo campo deriva dal campo user nel log non elaborato. |
| quando | ||
| anno | ||
| extensions.auth.type | MACHINE | |
| metadata.log_type | CISCO_SWITCH | |
| metadata.vendor_name | Cisco | |
| metadata.product_name | Cisco Switch | |
| network.application_protocol | DHCP | |
| network.dhcp.type | RICHIEDI | |
intermediary_ip |
event.idm.read_only_udm.intermediary.ip e event.idm.read_only_udm.intermediary.asset.ip |
Mappato dal log delle modifiche |
priority |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
product_log_id |
event.idm.read_only_udm.metadata.product_log_id |
Mappato dal log delle modifiche |
_time |
event.idm.read_only_udm.metadata.collected_timestamp |
Mappato dal log delle modifiche |
vlan_data |
event.idm.read_only_udm.intermediary.resource.attribute.labels |
Mappato dal log delle modifiche |
intermediary_ip |
event.idm.read_only_udm.intermediary.ip |
Mappato dal log delle modifiche |
intermediary_ip |
event.idm.read_only_udm.intermediary.asset.ip |
Mappato dal log delle modifiche |
time_stamp |
event.idm.read_only_udm.metadata.event_timestamp |
Mappato dal log delle modifiche |
process_name |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
switch_id |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
log_seq_num |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
log_seq_num_2 |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
p_interface |
event.idm.read_only_udm.principal.resource.name |
Mappato dal log delle modifiche |
audit_session_id |
event.idm.read_only_udm.security_result.detection_fields |
Mappato dal log delle modifiche |
mac |
event.idm.read_only_udm.principal.mac |
Mappato dal log delle modifiche |
packets |
event.idm.read_only_udm.network.sent_packets |
Mappato dal log delle modifiche |
facility |
event.idm.read_only_udm.principal.resource.resource_subtype |
Mappato dal log delle modifiche |
seq_num |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
device_hostname |
event.idm.read_only_udm.principal.hostname e event.idm.read_only_udm.principal.asset.hostname |
Mappato dal log delle modifiche |
id |
event.idm.read_only_udm.principal.user.userid |
Mappato dal log delle modifiche |
seq_num |
event.idm.read_only_udm.target.user.userid |
Mappato dal log delle modifiche |
log_message |
event.idm.read_only_udm.metadata.description |
Mappato dal log delle modifiche |
syslog_tag |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
syslog_pri |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
appcat |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
applist |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
dstintf |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
dstintfrole |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
mastersrcmac |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
osname |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
poluuid |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
service |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
srchwvendor |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
srcintf |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
srcintfrole |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
srcserver |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
transport |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
trandisp |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
vd |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
vwlid |
event.idm.read_only_udm.additional.fields |
Mappato dal log delle modifiche |
devid |
event.idm.read_only_udm.intermediary.asset.product_object_id |
Mappato dal log delle modifiche |
devname |
event.idm.read_only_udm.intermediary.hostname |
Mappato dal log delle modifiche |
logid |
event.idm.read_only_udm.metadata.product_log_id |
Mappato dal log delle modifiche |
subtype |
event.idm.read_only_udm.network.direction |
Mappato dal log delle modifiche |
proto |
event.idm.read_only_udm.network.ip_protocol |
Mappato dal log delle modifiche |
rcvdbyte |
event.idm.read_only_udm.network.received_bytes |
Mappato dal log delle modifiche |
sentbyte |
event.idm.read_only_udm.network.sent_bytes |
Mappato dal log delle modifiche |
sentpkt |
event.idm.read_only_udm.network.sent_packets |
Mappato dal log delle modifiche |
duration |
event.idm.read_only_udm.network.session_duration.seconds |
Mappato dal log delle modifiche |
sessionid |
event.idm.read_only_udm.network.session_id |
Mappato dal log delle modifiche |
srcname |
event.idm.read_only_udm.principal.asset.hostname, event.idm.read_only_udm.principal.hostname |
Mappato dal log delle modifiche |
srcip |
event.idm.read_only_udm.principal.asset.ip, event.idm.read_only_udm.principal.ip |
Mappato dal log delle modifiche |
srcmac |
event.idm.read_only_udm.principal.asset.mac, event.idm.read_only_udm.principal.mac |
Mappato dal log delle modifiche |
osname |
event.idm.read_only_udm.principal.asset.platform_software.platform |
Mappato dal log delle modifiche |
srcswversion |
event.idm.read_only_udm.principal.asset.platform_software.platform_version |
Mappato dal log delle modifiche |
srccountry |
event.idm.read_only_udm.principal.location.country_or_region |
Mappato dal log delle modifiche |
transip |
event.idm.read_only_udm.principal.nat_ip |
Mappato dal log delle modifiche |
srcport |
event.idm.read_only_udm.principal.port |
Mappato dal log delle modifiche |
action |
event.idm.read_only_udm.security_result.action |
Mappato dal log delle modifiche |
policyid |
event.idm.read_only_udm.security_result.rule_id |
Mappato dal log delle modifiche |
policyname |
event.idm.read_only_udm.security_result.rule_name |
Mappato dal log delle modifiche |
policytype |
event.idm.read_only_udm.security_result.rule_type |
Mappato dal log delle modifiche |
level |
event.idm.read_only_udm.security_result.severity |
Mappato dal log delle modifiche |
action |
event.idm.read_only_udm.security_result.summary |
Mappato dal log delle modifiche |
dstip |
event.idm.read_only_udm.target.asset.ip, event.idm.read_only_udm.target.ip |
Mappato dal log delle modifiche |
dstcountry |
event.idm.read_only_udm.target.location.country_or_region |
Mappato dal log delle modifiche |
dstport |
event.idm.read_only_udm.target.port |
Mappato dal log delle modifiche |
device |
principle.hostname |
Mappato dal log delle modifiche |
username3 |
principal.user.userid |
Mappato dal log delle modifiche |
login_status |
security_result.summary |
Mappato dal log delle modifiche |
ecs.version |
metadata.product_version |
Mappato dal log delle modifiche |
fileset.name", "flow.locality", "flow.id", "input.type", "netflow.exporter.source_id", and "netflow.exporter.uptime_millis |
additional.fields |
Mappato dal log delle modifiche |
network.transport |
network.ip_protocol |
Mappato dal log delle modifiche |
netflow.post_nat_source_ipv4_address |
principal.ip |
Mappato dal log delle modifiche |
netflow.source_transport_port |
principal.port |
Mappato dal log delle modifiche |
network.direction |
network.direction |
Mappato dal log delle modifiche |
intermediary_ip |
intermediary.ip |
Mappato dal log delle modifiche |
intermediary_hostname |
intermediary.hostname |
Mappato dal log delle modifiche |
principal_host |
principal.hostname |
Mappato dal log delle modifiche |
src_mac |
principal.mac |
Mappato dal log delle modifiche |
eventSummary |
metadata.product_event_type |
Mappato dal log delle modifiche |
error_msg |
security_result.detection_fields |
Mappato dal log delle modifiche |
pid |
principal.process.pid |
Mappato dal log delle modifiche |
srcPort |
principal.port |
Mappato dal log delle modifiche |
srcUser |
principal.user.userid |
Mappato dal log delle modifiche |
username1 |
target.user.userid |
Mappato dal log delle modifiche |
command |
target.process.command_line |
Mappato dal log delle modifiche |
PWD |
target.process.file.full_path |
Mappato dal log delle modifiche |
node_id", "cluster_id", "exception", "UniqueId", and "app_id |
additional.fields |
Mappato dal log delle modifiche |
DEVICE |
principal.mac |
Mappato dal log delle modifiche |
SRC |
principal.ip |
Mappato dal log delle modifiche |
SPT |
principal.port |
Mappato dal log delle modifiche |
DST |
target.ip |
Mappato dal log delle modifiche |
DPT |
target.port |
Mappato dal log delle modifiche |
ID |
network.session_id |
Mappato dal log delle modifiche |
LEN |
network.session_duration.seconds |
Mappato dal log delle modifiche |
PROTO |
network.ip_protocol |
Mappato dal log delle modifiche |
IN", "OUT", "PHYSIN", "WINDOW", "RES, "TOS", "PREC", "TTL" ,"URGP", "MAC", "radio", "vap", "auth_type", "sugg_band", "ssid_id", "ssid_profile_name" and "protocol |
additional.fields |
Mappato dal log delle modifiche |
client_mac |
principal.mac |
Mappato dal log delle modifiche |
aid |
network.session_id |
Mappato dal log delle modifiche |
rssi |
intermediary.asset.product_object_id |
Mappato dal log delle modifiche |
channel |
security_result.detection_fields |
Mappato dal log delle modifiche |
eventSummary", "dhcp_ip", "client_mac", "aid" and "ip_src |
metadata.product_event_type |
Mappato dal log delle modifiche |
mac", "src", "sport", "dst", "dport", "action", "protocol", "url" and "signature |
principal.mac |
Mappato dal log delle modifiche |
metadata.event_type" and "extensions.auth.type |
USER_LOGIN |
Mappato dal log delle modifiche |
eventSummary", "aid", "rssi", "channel", "last_known_client_ip" and "event_type |
security_result.summary |
Mappato dal log delle modifiche |
pid |
target.process.pid |
Mappato dal log delle modifiche |
app_name |
target.application |
Mappato dal log delle modifiche |
Log delle modifiche
Visualizza il log delle modifiche per questo parser
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.