vRealize Automation SaltStack SecOps è un componente aggiuntivo per SaltStack Config che fornisce due librerie di sicurezza. Entrambe le librerie dei contenuti vengono aggiornate regolarmente quando gli standard di sicurezza vengono modificati. È possibile configurare i contenuti in modo che vengano scaricati (o importati) automaticamente quando gli standard di sicurezza vengono modificati, operazione consigliata per la maggior parte dei sistemi standard.
I tipi di contenuto seguenti vengono forniti come parte di SaltStack SecOps:
- Conformità: rilevamento e correzione automatizzati della conformità per l'infrastruttura. La libreria di contenuti di conformità è costituita dai contenuti di conformità e sicurezza delle procedure consigliate del settore, ad esempio CIS.
- Vulnerabilità: gestisce le vulnerabilità in tutti i sistemi dell'ambiente. La sua libreria di contenuti include avvisi basati sulle voci CVE (Common Vulnerabilities and Exposures) più recenti.
In alternativa, la libreria include l'opzione per scaricare i contenuti manualmente o per accedere ai contenuti dal nodo RaaS tramite un proxy HTTP(S). L'inserimento manuale è utile per i sistemi air gap, mentre il download tramite proxy è utile per evitare di scaricare contenuti direttamente da Internet. Il download tramite proxy garantisce inoltre maggiore controllo e visibilità su ciò che viene scaricato e dove.
Prima di iniziare
La configurazione di SaltStack SecOps fa parte di una serie di passaggi post-installazione che devono essere eseguiti in un ordine specifico. Completare innanzitutto uno degli scenari di installazione e quindi leggere le seguenti pagine dopo l'installazione:
Installazione delle librerie rpm di Python 3
SaltStack SecOps utilizza le librerie rpm di Python 3 per confrontare in modo affidabile le versioni dei pacchetti. Questi programmi richiedono la maggiore precisione fornita da queste librerie per determinare la conformità delle versioni o valutare le vulnerabilità.
Attualmente, qualsiasi minion che utilizza Red Hat o CentOS 7 potrebbe aver bisogno delle librerie rpm di Python 3 per eseguire valutazioni di conformità o vulnerabilità precise. Se si intende eseguire valutazioni nei minion che utilizzano queste versioni di Red Hat o CentOS, è necessario installare manualmente la libreria rpm di Python 3 su queste macchine.
Sono disponibili soluzioni alternative. Se è necessaria una soluzione alternativa, contattare il supporto.
Per installare la libreria rpm di Python 3 nel Salt Master che esegue il plug-in Master:
- Installare il repository EPEL utilizzando il comando seguente:
yum install -y epel-release
- Installare la libreria rpm di Python 3:
yum install -y python3-rpm
Inserimento automatico dei contenuti per i sistemi standard
Per i sistemi RaaS non air gap, i contenuti vengono scaricati e inseriti periodicamente in base alle impostazioni nel file di configurazione. Per impostazione predefinita, l'inserimento automatico dei contenuti è già configurato in SaltStack Config e non sono necessarie altre operazioni.
Se SaltStack Config è stato installato manualmente, eseguire i passaggi seguenti per configurare l'inserimento automatico dei contenuti di SaltStack SecOps:
- Aggiungere quanto segue al file di configurazione del servizio RaaS
/etc/raas/raas
nella sezionesec
adattandolo alle necessità:sec: stats_snapshot_interval: 3600 username: secops content_url: https://enterprise.saltstack.com/secops_downloads ingest_saltstack_override: true ingest_custom_override: true locke_dir: locke post_ingest_cleanup: true download_enabled: true download_frequency: 86400 compile_stats_interval: 10 archive_interval: 300 old_policy_file_lifespan: 2 delete_old_policy_files_interval: 86400 ingest_on_boot: true content_lock_timeout: 60 content_lock_block_timeout: 120
- Salvare il file.
- Riavviare il servizio RaaS:
systemctl restart raas
Dopo il riavvio del servizio, viene avviato il download dei contenuti di SaltStack SecOps. Questa operazione può richiedere fino a cinque minuti, in base alla connessione Internet.
Inserimento dei contenuti tramite il proxy http(s)
Per l'inserimento tramite proxy, è necessario creare una sostituzione per il servizio RaaS e aggiungere nuove variabili di ambiente per httpproxy
e httpsproxy
.
Per configurare il nodo RaaS in modo che utilizzi il proxy https:
- Completare i passaggi precedenti per abilitare l'inserimento automatico.
- Nel master nella riga di comando, modificare il servizio RaaS:
systemctl edit raas
- Aggiungere le righe seguenti al file generato.
[Service] Environment="http_proxy=http://<hostname>:234" Environment="https_proxy=https://<hostname>:234" Environment="HTTP_PROXY=http://<hostname>:234" Environment="HTTPS_PROXY=http://<hostname>:234"
- Se il proxy richiede l'autenticazione con password, potrebbe essere necessario impostarla come parte delle variabili di ambiente del proxy. Ad esempio:
Environment="HTTP_PROXY=http://USER:PASSWORD@<hostname>:234"
- Se il proxy utilizza un'autorità di certificazione interna, potrebbe essere necessario impostare anche la variabile di ambiente
REQUESTS_CA_BUNDLE
per assicurarsi che il proxy sia in grado di utilizzarla. Ad esempio:Environment="REQUESTS_CA_BUNDLE=/etc/pki/tls/certs/ca-bundle.crt"
- Riavviare il servizio RaaS:
systemctl restart raas
Dopo il riavvio del servizio, viene avviato il download dei contenuti. Questa fase può richiedere fino a 20 minuti.
Inserimento manuale dei contenuti per SaltStack SecOps Compliance
Se l'ambiente è air gap, ovvero non può connettersi a un sito esterno per scaricare gli aggiornamenti, è necessario aggiornare manualmente il contenuto di SaltStack SecOps Compliance scaricando il tarball da Customer Connect e trasferendolo al nodo RaaS.
Se il sistema è air gap, modificare inoltre l'impostazione di configurazione del download nel file di configurazione di RaaS impostandola su False:
sec: download_enabled: False
Il file di configurazione di RaaS si trova in /etc/raas/raas
. Potrebbe inoltre essere necessario riavviare il servizio RaaS dopo aver applicato queste impostazioni di configurazione:
systemctl restart raas
Per inserire manualmente il tarball di SaltStack SecOps Compliance:
- Scaricare il contenuto di SaltStack SecOps Compliance.
- Accedere al nodo RaaS.
- Copiare il tarball del contenuto di conformità nel nodo RaaS nella cartella
tmp
.Questi contenuti possono essere distribuiti tramite email o in qualsiasi altro modo.
- Inserire i contenuti del tarball.
su - raas -c "raas ingest /path/to/locke.tar.gz.e"
Viene restituito quanto segue:
Extracting: /tmp/locke.tar.gz -> /tmp/extracted-1551290468.5497127 Cleaning up: /tmp/extracted-1551290468.5497127 Results: {'errors': [], 'success': True}
Inserimento manuale dei contenuti per SaltStack SecOps Vulnerability
Se l'ambiente è air gap, ovvero non può connettersi a un sito esterno per scaricare gli aggiornamenti, è necessario aggiornare manualmente il contenuto di SaltStack SecOps Vulnerability scaricando il tarball da Customer Connect e trasferendolo al nodo RaaS.
Se il sistema è air gap, modificare inoltre l'impostazione di configurazione del download nel file di configurazione di RaaS impostandola su False:
sec: download_enabled: False
Il file di configurazione di RaaS si trova in /etc/raas/raas
. Potrebbe inoltre essere necessario riavviare il servizio RaaS dopo aver applicato queste impostazioni di configurazione:
systemctl restart raas
Per inserire manualmente il tarball di SaltStack SecOps Vulnerability:
- Scaricare il contenuto di SaltStack SecOps Vulnerability.
- Accedere al nodo RaaS.
- Copiare il tarball dei contenuti di vulnerabilità nel nodo RaaS nella cartella
tmp
.Questi contenuti possono essere distribuiti tramite email o in qualsiasi altro modo.
- Immettere i contenuti del tarball, sostituendo il nome del tarball in questo comando con il nome di file esatto del tarball:
su - raas -c "raas vman_ingest /tmp/vman_date_example123.tar.gz.e"
Viene restituito quanto segue:
'adv': {'error': 0, 'success': 60334}, 'adv_cve_xref': {'error': 0, 'success': 243781}, 'cve': {'error': 0, 'success': 162251}, 'pkgfile': {'error': 0, 'success': 42}, 'py': {'error': 0, 'success': 7}, 'sls': {'error': 0, 'success': 3}
Risoluzione dei problemi relativi all'inserimento manuale
Se si tenta di eseguire i comandi di inserimento manuale per il contenuto di SaltStack SecOps Compliance o SaltStack SecOps Vulnerability, è possibile che venga visualizzato un messaggio di errore simile al seguente:
/home/centos/locke_date_example123.tar.gz.e not found or not readable
Questo messaggio di errore viene a volte visualizzato se non si posiziona il tarball nella cartella tmp
. Se si posiziona il tarball nella cartella tmp
, il problema viene risolto.
Configurazione dell'integrazione di Splunk
SaltStack Config integra la libreria di vulnerabilità con Splunk per consentire di ottimizzare e proteggere l'infrastruttura digitale utilizzando il componente aggiuntivo SaltStack Config per Splunk Enterprise. Il componente aggiuntivo è disponibile su Splunkbase e richiede SaltStack Config versione 6.3 o successiva.
Il componente aggiuntivo SaltStack Config in Splunk sfrutta un endpoint delle metriche compatibile con Prometheus che segnala oltre 25 metriche di SaltStack Config univoche. Queste metriche forniscono informazioni dettagliate sullo stato dell'infrastruttura. L'accesso a queste metriche in Splunk è utile per monitorare le interruzioni, identificare attività anomale e molto altro. Offre inoltre la possibilità di eseguire azioni automatizzate in base a un evento specifico di Splunk utilizzando SaltStack Config.
Per istruzioni sull'installazione e la configurazione del componente aggiuntivo, vedere la documentazione completa del componente aggiuntivo nella Knowledge Base di VMware.
Per ulteriori informazioni sull'endpoint delle metriche di SaltStack Config, vedere la documentazione del prodotto per SaltStack SecOps.
Opzioni di configurazione
Nella seguente tabella vengono descritte le opzioni di configurazione disponibili per i contenuti di conformità:
Opzione | Descrizione |
---|---|
stats_snapshot_interval |
Frequenza (in secondi) con cui verranno raccolte le statistiche di SaltStack SecOps Compliance |
compile_stats_interval |
Frequenza (in secondi) con cui verranno compilate le statistiche di SaltStack SecOps Compliance |
username |
Nome utente da utilizzare durante la connessione a SaltStack Config per scaricare i contenuti più recenti di SaltStack SecOps Compliance (impostazione predefinita: secops ) |
content_url |
URL utilizzato per scaricare i contenuti di SaltStack SecOps Compliance |
ingest_override |
Quando si inseriscono nuovi contenuti, consente di sovrascrivere i benchmark e i controlli esistenti (impostazione predefinita: True ) |
locke_dir |
Percorso in cui l'inserimento prevede di trovare nuovi contenuti (impostazione predefinita: locke ). Se si utilizza un percorso relativo (nessuna / iniziale), questa opzione indica la directory della cache /var/lib/raas/cache del servizio RaaS |
post_ingest_cleanup |
Rimuove i contenuti espansi dal file system dopo l'inserimento (impostazione predefinita: True ) |
download_enabled |
Indica se sono consentiti i download dei contenuti di SaltStack SecOps Compliance (impostazione predefinita: True ). Impostare questa opzione su False per i sistemi air gap. |
download_frequency |
Frequenza in secondi con cui il servizio RaaS tenterà di scaricare i contenuti di SaltStack SecOps Compliance (impostazione predefinita: 86400 , ovvero 24 ore) |
ingest_on_boot |
Indica se il servizio RaaS deve tentare di scaricare i contenuti di SaltStack SecOps Compliance all'avvio (impostazione predefinita: True ) |
content_lock_timeout |
Durata in secondi dei blocchi del download dei contenuti (impostazione predefinita: 60 ) |
content_lock_block_timeout |
Durata in secondi dell'interruzione dei blocchi del download dei contenuti prima che l'operazione abbia esito negativo (impostazione predefinita: 120 ) |
Nella seguente tabella vengono descritte le opzioni di configurazione disponibili per i contenuti vulnerabilità:
Opzione | Descrizione |
---|---|
vman_dir |
Posizione in cui i contenuti di SaltStack SecOps Vulnerability vengono espansi prima dell'inserimento. Se il percorso è relativo (nessuna / iniziale), questa opzione indica la directory della cache /var/lib/raas/cache del servizio RaaS |
download_enabled |
Se è True , il download dei contenuti di SaltStack SecOps Vulnerability è attivato. Impostare su False per i sistemi air gap |
download_frequency |
Frequenza in secondi dei download e dell'inserimento automatici dei contenuti di SaltStack SecOps Vulnerability |
username |
Nome utente utilizzato per accedere a enterprise.saltstack.com per recuperare i contenuti |
content_url |
URL da cui verranno scaricati i contenuti di SaltStack SecOps Vulnerability |
ingest_on_boot |
Se è True , i contenuti di SaltStack SecOps Vulnerability verranno scaricati e inseriti subito dopo l'avvio del servizio RaaS (impostazione predefinita: True ) |
compile_stats_interval |
Frequenza (in secondi) con cui verranno compilate le statistiche di SaltStack SecOps Vulnerability |
stats_snapshot_interval |
Frequenza (in secondi) con cui verranno raccolte le statistiche di SaltStack SecOps Vulnerability |
old_policy_file_lifespan |
Durata (in giorni) dei vecchi file dei criteri che rimarranno nel file system di RaaS |
delete_old_policy_files_interval |
Frequenza (in secondi) con cui i file obsoleti dei criteri di SaltStack SecOps Vulnerability verranno eliminati dal file system di RaaS |
tenable_asset_import_enabled |
Se è True , i grani dei minion in SaltStack Config verranno inviati a Tenable.io per le risorse corrispondenti (impostazione predefinita: True ) |
tenable_asset_import_grains |
Elenco dei grani dei minion da inviare a Tenable.io se l'importazione delle risorse tenable è abilitata. Per impostazione predefinita, SaltStack SecOps Vulnerability supporta solo Se nei dati dei grani sono presenti solo le chiavi di un sottoinsieme, verranno sincronizzati solo i grani del sottoinsieme. Per ulteriori informazioni, vedere la documentazione sull'importazione delle risorse tenable. |
Domande frequenti
- D: con quale frequenza vengono rilasciati i nuovi contenuti di SaltStack Vulnerability?
- R: la frequenza di rilascio corrente è di circa una volta a trimestre. Tuttavia, i contenuti potrebbero essere rilasciati più frequentemente in futuro.
- È possibile accedere prima ai nuovi contenuti se si utilizza l'inserimento automatico dei contenuti anziché l'inserimento manuale?
- R: sono disponibili gli stessi contenuti, sia tramite l'inserimento manuale sia tramite l'inserimento automatico.
Tuttavia, se si utilizza l'inserimento manuale, è necessario pianificare la verifica della disponibilità di aggiornamenti dei contenuti di sicurezza e sviluppare un processo per l'inserimento manuale dei contenuti aggiornati quando sono disponibili.
- R: sono disponibili gli stessi contenuti, sia tramite l'inserimento manuale sia tramite l'inserimento automatico.
Passaggi successivi
Dopo la configurazione di SaltStack SecOps, potrebbe essere necessario eseguire ulteriori passaggi successivi all'installazione. Controllare l'elenco dei passaggi successivi all'installazione per assicurarsi di aver completato tutti i passaggi necessari.