Distribuisci la piattaforma di sicurezza Wazuh su Linux utilizzando Puppet
Al giorno d’oggi, a causa dell’aumento delle minacce informatiche, esiste una forte necessità di eseguire il monitoraggio in tempo reale dei sistemi. Ciò aiuta a rilevare le minacce non appena si verificano e ad agire di conseguenza.
La Wazuh Security Platform è una piattaforma gratuita e open source che può essere utilizzata per eseguire il monitoraggio e l'analisi in tempo reale dei sistemi. Fornisce una sicurezza leggera basata a livello di sistema operativo utilizzando agenti multipiattaforma. Aiuta a raccogliere, aggregare, indicizzare e analizzare i dati di sicurezza che potrebbero contenere intrusioni o anomalie del sistema.
La piattaforma di sicurezza Wazuh può essere utilizzata per proteggere i carichi di lavoro su cloud pubblici e privati, nonché su data center on-premise. Le sue funzioni principali ruotano attorno a:
- Sicurezza degli endpoint con valutazione della configurazione, rilevamento e risposta estesi e monitoraggio dell'integrità dei file
- Operazioni di sicurezza che includono; Rilevamento malware, analisi dei dati di registro, audit, conformità ecc
- Sicurezza sul cloud offrendo gestione della postura, protezione del carico di lavoro e sicurezza del container
- Intelligence sulle minacce attraverso la caccia alle minacce, l'igiene IT e il rilevamento delle vulnerabilità
La soluzione Wazuh è composta dai seguenti componenti:
- Wazuh Server – Analizza i dati ricevuti dagli agenti. Elabora questi dati attraverso decodificatori e regole.
- Dashboard Wazuh: un'interfaccia utente basata sul Web per visualizzare l'analisi dei dati.
- Indicizzatore Wazuh: si tratta di un motore di ricerca e analisi full-text con elevata scalabilità. Viene utilizzato per indicizzare e archiviare gli avvisi dal server Wazuh
- Agenti Wazuh: installati sugli endpoint. Si tratta di desktop, laptop, server, istanze cloud o macchine virtuali.
Esistono due implementazioni per la piattaforma di sicurezza Wazuh, ovvero:
- Distribuzione all-in-one, in cui i componenti dello stack Wazuh vengono installati su un singolo server. Questo può essere meglio spiegato utilizzando il diagramma seguente
- Distribuzione distribuita in cui i componenti sono installati su host separati. Questo metodo di installazione fornisce elevata disponibilità e scalabilità della piattaforma di sicurezza Wazuh.
Questa guida fornisce i passaggi su come distribuire la piattaforma di sicurezza Wazuh su Linux utilizzando Puppet.
Passaggio 1: installa e configura Puppet su Linux
Puppet è uno strumento di automazione sviluppato daPuppet Labs. Può essere utilizzato per configurare, gestire e distribuire facilmente la piattaforma di sicurezza Wazuh.
Per poter procedere è necessario che il server e l'agente Puppet siano installati e configurati per comunicare. Le guide seguenti possono aiutarti a raggiungere questo obiettivo.
- Su Debian/Ubuntu
- Installa Puppet Master e Agent su Ubuntu
- Su RHEL 8/CentOS 8/Rocky Linux 8/Alma Linux 8
- Installa Puppet Server su CentOS 8|RHEL 8|Rocky Linux 8
- Su RHEL 7/CentOS 7
- Installa Puppet Server e Agent su CentOS 7|RHEL 7
Dopo l'installazione, verificare se il server Puppet e l'agente possono comunicare.
$ sudo /opt/puppetlabs/bin/puppet agent -t
Info: csr_attributes file loading from /etc/puppetlabs/puppet/csr_attributes.yaml
Info: Creating a new SSL certificate request for puppetnode.example.com
Info: Certificate Request fingerprint (SHA256): FC:ED:2C:5C:5E:45:E9:A3:41:96:84:0C:46:F7:40:D3:E2:BE:1E:B3:04:14:7E:5C:BA:75:64:90:DC:53:2A:DC
Info: Downloaded certificate for puppetnode.example.com from https://puppetmaster.example.com:8140/puppet-ca/v1
Info: Using environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Caching catalog for puppetnode.example.com
Info: Applying configuration version '1653589224'
Info: Creating state file /opt/puppetlabs/puppet/cache/state/state.yaml
Notice: Applied catalog in 0.03 seconds
Passaggio 2: installare il modulo Wazuh Puppet.
Procedi e installa il modulo Wazuh Puppet che verrà utilizzato per la distribuzione. Il comando seguente può essere utilizzato per installare il modulo Wazuh Puppet.
$ sudo /opt/puppetlabs/bin/puppet module install wazuh-wazuh
Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ...
Notice: Downloading from https://forgeapi.puppet.com ...
Notice: Installing -- do not interrupt ...
/etc/puppetlabs/code/environments/production/modules
└─┬ wazuh-wazuh (v4.3.1)
├── puppet-nodejs (v7.0.1)
├── puppet-selinux (v3.4.1)
├── puppetlabs-apt (v7.7.1)
├─┬ puppetlabs-concat (v6.4.0)
│ └── puppetlabs-translate (v2.2.0)
├── puppetlabs-firewall (v2.8.1)
├─┬ puppetlabs-powershell (v4.1.0)
│ └── puppetlabs-pwshlib (v0.10.1)
└── puppetlabs-stdlib (v6.6.0)
Passaggio 3: installa lo stack Wazuh tramite Puppet
Lo stack Wazuh costituito dal gestore Wazuh, dall'indicizzatore Wazuh, dal dashboard Wazuh e da Filebeat può essere distribuito utilizzando il manifest creato come mostrato.
sudo vim /etc/puppetlabs/code/environments/production/manifests/init.pp
Il manifest conterrà le righe seguenti:
node "puppetnode.example.com" {
class { 'wazuh::manager':
}
class { 'wazuh::indexer':
}
class { 'wazuh::filebeat_oss':
}
class { 'wazuh::dashboard':
}
}
Sostituisci puppetnode.example.com con il nome host/indirizzo IP dell'agente Puppet che desideri funga da server Wazuh.
Esegui il manifesto:
sudo /opt/puppetlabs/bin/puppet agent -t
Risultato dell'esecuzione:
Sul server Wazuh, consenti alle porte seguenti di attraversare il firewall.
sudo firewall-cmd --add-port=443/tcp --permanent
sudo firewall-cmd --add-port=514/udp --permanent
sudo firewall-cmd --add-port=1514/udp --permanent
sudo firewall-cmd --add-port=1515/udp --permanent
sudo firewall-cmd --add-port=1514/tcp --permanent
sudo firewall-cmd --add-port=1515/tcp --permanent
sudo firewall-cmd --reload
Passaggio 4: installa l'agente Wazuh tramite Puppet
Per installare l'agente Wazuh, dobbiamo creare un manifest. Qui avremo il manifest creato con il comando:
sudo vim /etc/puppetlabs/code/environments/production/manifests/wazuh-agent.pp
Aggiungi le righe seguenti al file:
node "puppetnode2.example.com" {
class { "wazuh::agent":
wazuh_register_endpoint => "<MANAGER_IP>",
wazuh_reporting_endpoint => "<MANAGER_IP>"
}
}
Ricorda,puppetnode2.example.com è l'indirizzo IP/nome di dominio del nodo su cui desideri eseguire il servizio agente Wazuh e MANAGER_IP è l'indirizzo IP del server Wazuh.
Esegui il manifest utilizzando il comando:
sudo /opt/puppetlabs/bin/puppet agent -t
Output di esempio:
Passaggio 5: accedi alla dashboard di Wazuh
È ora possibile accedere alla dashboard di Wazuh utilizzando l'URL https://wazuh_server_IP.
Accedi utilizzando il nome utente come admin e una password preferita. Una volta effettuato l'accesso, vedrai la dashboard sottostante.
Fare clic sugli agenti Wazuh per verificare lo stato.
Fare clic sull'agente per visualizzare i dashboard.
Ecco!
Hai distribuito con successo la piattaforma di sicurezza Wazuh su Linux utilizzando Puppet. Esegui il monitoraggio e l'analisi in tempo reale dei sistemi utilizzando Wazuh. Spero che questo sia stato utile
Post correlati:
- Automatizza l'installazione di Graylog Server utilizzando Puppet
- Esegui Wazuh Server nei contenitori Docker utilizzando Docker Compose
- Installa il server Wazuh su CentOS 8|RHEL 8|AlmaLinux 8