Introduzione
In questo documento viene descritto come analizzare diverse possibili cause per cui un sensore SCA (Secure Cloud Analytics) viene visualizzato come offline.
Premesse
Secure Cloud Analytics (SCA) in precedenza si chiamava Stealthwatch Cloud (SWC) e questi termini possono essere utilizzati in modo intercambiabile.
Il sensore SCA è il monitor di rete privato e può essere denominato ONA, ONA Sensor o semplicemente Sensor.
I comandi di questo articolo si basano sull'installazione debian ona-20.04.1-server-amd64.iso.
Possibili cause dei sensori offline
Sono molti i possibili fattori che possono determinare la presenza di uno stato non in linea da parte di un sensore.
Due esempi di questi fattori sono i problemi relativi alla rete e il file system locale dispone di un disco completo.
Identificazione di un sensore non in linea
Il portale SCA contiene un elenco di sensori configurati. Per accedere a questa pagina, passare a Settings > Sensors.
Il sensore offline in questa immagine è rappresentato in rosso e non mostra alcun heartbeat e dati recenti.
Esaminare un sensore non in linea
Problemi di rete
L'host ONA può perdere l'accesso a Internet e di conseguenza il sensore può essere elencato come non in linea.
Verificare se l'host ONA è in grado di eseguire il ping di un indirizzo IP noto come attivo, ad esempio uno dei server DNS Google, alla posizione 8.8.8.8.
Accedere al sensore ONA ed eseguire il comando ping -c4 8.8.8.8.
user@example-ona:~# ping -c4 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
From 10.10.10.11 icmp_seq=1 Destination Host Unreachable
From 10.10.10.11 icmp_seq=2 Destination Host Unreachable
From 10.10.10.11 icmp_seq=3 Destination Host Unreachable
From 10.10.10.11 icmp_seq=4 Destination Host Unreachable
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3065ms
user@example-ona:~#
Se il sensore non è in grado di eseguire il ping di un indirizzo IP attivo noto, eseguire ulteriori ricerche.
Determinare il gateway predefinito con route -n
Determinare se esiste una voce ARP (Address Resolution Protocol) valida rilevata per il gateway predefinito con arp -an
Se il sensore è in grado di eseguire il ping di un indirizzo IP noto, verificare la risoluzione dei nomi host DNS e la capacità del sensore di connettersi al cloud.
Accedere al sensore ed eseguire sudo curl https://sensor.ext.obsrvbl.com
L'output del comando curl mostra che la risoluzione DNS per sensor.ext.obsrvbl.com non è riuscita e che è garantita l'analisi del DNS.
user@example-ona:~# sudo curl https://sensor.ext.obsrvbl.com
[sudo] password for user:
curl: (6) Could not resolve host: sensor.ext.obsrvbl.com
user@example-ona:~#
Questo tipo di risposta indica una buona connessione e anche che il portale del cloud riconosce il sensore.
Questo tipo di risposta indica una connessione valida, ma il sensore non è stato associato a un particolare dominio.
user@example-ona:~# sudo curl https://sensor.anz-prod.obsrvbl.com
[sudo] password for user:
{"error":"unknown identity","identity":"240.0.0.0"}
user@example-ona:~#
Problemi DNS
Se Sensor non è in grado di risolvere i nomi host con DNS, verificare le impostazioni DNS con cat /etc/netplan/01-netcfg.yaml
se le impostazioni DNS richiedono modifiche, fare riferimento alla sezione Aggiornamento della configurazione DNS.
Una volta convalidate le impostazioni DNS, eseguire sudo systemctl restart systemd-resolved.service
Non è previsto alcun output con questo comando.
user@example-ona:~# sudo systemctl restart systemd-resolved.service
[sudo] password for user:
user@example-ona:~#
Aggiorna la configurazione DNS
Per aggiornare i server DNS in Netplan, è possibile modificare il file di configurazione di Netplan per l'interfaccia di rete.
I file di configurazione Netplan sono memorizzati nella directory /etc/netplan.
Suggerimento: in questa directory è possibile trovare uno o due file YAML. I nomi file previsti sono 01-netcfg.yaml e/o 50-cloud-init.yaml.
Aprire il file di configurazione di Netplan con sudo vi /etc/netplan/01-netcfg.yaml
Nel file di configurazione Netplan, individuare la chiave "nameservers" nell'interfaccia di rete.
È possibile specificare più indirizzi IP dei server DNS separati da virgole.
Applicare le modifiche alla configurazione di Netplan con sudo netplan apply
Netplan genera i file di configurazione per il servizio risolto dal sistema.
Per verificare che i nuovi resolver DNS siano impostati, eseguire il comando resolvectl status | grep -A2 'DNS Servers'
user@example-ona:~# resolvectl status | grep -A2 'DNS Servers'
DNS Servers: 10.122.147.56
DNS Domain: example.org
user@example-ona:~#
File system locale pieno
Sulla console del sensore può essere visualizzato un messaggio di errore comune: "Impossibile creare il nuovo journal di sistema: spazio esaurito sul dispositivo".
Ciò indica che il disco è pieno e non vi è più spazio nel file system radice.
Eseguire il df -ah /
e determinare lo spazio disponibile.
user@example-ona:~# df -ah /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vgona--default-root 30G 30G 0G 100% /
user@example-ona:~#
Cancella i registri di registro meno recenti per liberare spazio su disco con journalctl --vacuum-time 1d
user@example-ona:~# journalctl --vacuum-time 1d
Vacuuming done, freed 0B of archived journals from /var/log/journal.
{Removed for brevity}
Vacuuming done, freed 2.9G of archived journals from /var/log/journal/315bfec86e0947b2a3a23da2a672e577.
Vacuuming done, freed 0B of archived journals from /run/log/journal.
user@example-ona:~#
Verificare che lo spazio di storage in uso soddisfi i requisiti minimi di sistema descritti nella Guida alla distribuzione iniziale.
La guida può essere recuperata dalla pagina di supporto dei prodotti Cisco Secure Cloud Analytics (Stealthwatch Cloud): https://www.cisco.com/c/en/us/support/security/stealthwatch-cloud/series.html
Configurazione di monitoraggio
Un sensore con una buona connettività di rete al cloud e impostazioni DNS valide può comunque presentare uno stato offline.
Lo stato offline è possibile se le opzioni di monitoraggio del sensore sono disabilitate o se il sensore non invia heartbeat.
Nota: questa sezione è destinata all'installazione predefinita del sensore ONA senza personalizzazioni e riceve attivamente i dati netflow e/o IPFIX.
Eseguire il grep PNA_SERVICE /opt/obsrvbl-ona/config
per determinare lo stato.
user@example-ona:~# grep PNA_SERVICE /opt/obsrvbl-ona/config
OBSRVBL_PNA_SERVICE="false"
user@example-ona:~#
Se il servizio è impostato su false, verificare che le reti desiderate siano elencate in Settings > configure monitoring
per il sensore nel portale SCA.
Eseguire il ps -fu obsrvbl_ona | grep pna
e la nota se il servizio è visibile e se sono elencati gli intervalli di rete monitorati previsti.
user@example-ona:~# ps -fu obsrvbl_ona | grep pna
obsrvbl+ 925 763 0 Feb09 ? 00:29:04 /usr/bin/python3 /opt/obsrvbl-ona/ona_service/pna_pusher.py
obsrvbl+ 956 920 0 Feb09 ? 00:24:00 /opt/obsrvbl-ona/pna/user/pna -i ens192 -N 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 -o /opt/obsrvbl-ona/logs/pna -Z obsrvbl_ona (net 10.0.0.0/8) or (net 172.16.0.0/12) or (net 192.168.0.0/16)
obsrvbl+ 957 921 0 Feb09 ? 00:00:00 /opt/obsrvbl-ona/pna/user/pna -i ens224 -N 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 -o /opt/obsrvbl-ona/logs/pna -Z obsrvbl_ona (net 10.0.0.0/8) or (net 172.16.0.0/12) or (net 192.168.0.0/16)
user@example-ona:~#
L'output del comando mostra che il servizio PNA ha gli ID di processo 956 e 957 e che gli intervalli di indirizzi privati 10.0.0.0/8, 172.16.0.0/12 e 192.168.0.0/16 sono monitorati sulle interfacce ens192 e ens224.
Nota: gli intervalli di indirizzi e i nomi delle interfacce possono variare in base alla configurazione e alla distribuzione del sensore
Errori SSL
Esaminare il file /opt/obsrvbl-ona/logs/ona_service/ona-pna-pusher.log per verificare la presenza di errori SSL con less /opt/obsrvbl-ona/logs/ona_service/ona-pna-pusher.log
Viene fornito un esempio di errore.
(Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1131)'))).
Eseguire il wget https://s3.amazonaws.com
e rivedere l'output per verificare se è possibile eseguire l'ispezione HTTPS.
In caso di ispezione HTTPS, assicurarsi che il sensore sia rimosso da qualsiasi ispezione o inserito in un elenco consentito.