51 07/04/2026 9 min

Installare Wazuh su Ubuntu: scelta dell’architettura

Se devi mettere in piedi Wazuh su Ubuntu, la prima decisione non è il comando di installazione ma il perimetro: vuoi una piattaforma monolitica per laboratorio o un setup già sensato per produzione? Su un singolo host puoi installare manager, indexer e dashboard insieme. In ambienti reali conviene separare almeno il nodo Wazuh manager dal frontend, e valutare storage e retention prima di iniziare, perché i log di sicurezza crescono in fretta.

Wazuh copre raccolta eventi, agent su endpoint, analisi di integrità, vulnerability detection, detection rules e dashboard web. L’installazione “facile” funziona, ma se non definisci prima DNS, risorse e accesso amministrativo rischi di dover rifare certificati, configurazioni e routing dopo poche ore.

Prerequisiti da verificare prima di toccare il sistema

  • Ubuntu supportato e aggiornato.
  • Hostname risolvibile in DNS o in /etc/hosts.
  • Accesso root o sudo.
  • Almeno 4 GB di RAM per test, meglio di più in produzione.
  • Spazio disco adeguato per log e indici.

Per un’installazione standard su Ubuntu, la versione esatta del sistema e quella di Wazuh contano. Se stai leggendo questa guida per un server già in produzione, fai prima un backup della configurazione esistente e valuta una finestra di change controllato. Il rischio operativo principale è modificare repository, servizi e certificati senza un punto di ritorno chiaro.

Preparazione del server Ubuntu

Parti dall’aggiornamento del sistema e dalla verifica dei pacchetti base. Questo riduce il numero di variabili quando poi installi i componenti Wazuh.

sudo apt update && sudo apt -y upgrade

Se il sistema richiede reboot dopo il kernel update, fallo prima di proseguire. Verifica anche che l’orario sia corretto, perché certificati e autenticazione dipendono dalla sincronizzazione temporale.

timedatectl status

Atteso: System clock synchronized: yes o comunque un NTP attivo. Se non lo è, attiva un servizio di time sync prima di andare avanti.

Controlla hostname e risoluzione:

hostnamectl status
getent hosts $(hostname -f)

Se il FQDN non risolve, correggi DNS o /etc/hosts. Per Wazuh questo è importante perché i certificati e i componenti web si appoggiano spesso al nome host, non solo all’IP.

Aggiungere il repository Wazuh

Il metodo più pulito è usare il repository ufficiale. Evita installazioni casuali da pacchetti non verificati o script trovati in giro senza controllo, soprattutto se l’obiettivo è una macchina esposta in rete.

Scarica e aggiungi la chiave del repository con il metodo supportato dalla release in uso. I dettagli possono cambiare tra versioni, quindi conviene verificare la documentazione ufficiale del ramo che vuoi installare. In ogni caso, il risultato atteso è avere il repository Wazuh registrato in APT e i pacchetti firmati correttamente.

Un controllo rapido è questo:

apt-cache policy | grep -i wazuh

Se non vedi il repository, non procedere: significa che la registrazione non è andata a buon fine. La correzione va fatta prima dell’installazione dei componenti principali.

Installazione del Wazuh manager

Il manager è il cuore della piattaforma: riceve gli eventi dagli agent, applica regole, genera allarmi e alimenta gli altri componenti. Su Ubuntu l’installazione può essere eseguita via APT una volta registrato il repository.

sudo apt update
sudo apt -y install wazuh-manager

Dopo l’installazione, controlla lo stato del servizio:

systemctl status wazuh-manager --no-pager

Atteso: servizio active (running). Se è in errore, il primo posto da guardare è il journal:

journalctl -u wazuh-manager -n 100 --no-pager

In caso di problemi di avvio, le cause più comuni sono risorse insufficienti, configurazione corrotta o conflitti di porte. Non forzare modifiche a caso: prima identifica il messaggio di errore preciso.

Installazione di Wazuh indexer e dashboard

Per avere ricerca e interfaccia web servono anche l’indexer e la dashboard. In molti casi il pacchetto o lo script di installazione ufficiale prepara entrambi, più la configurazione TLS. Se scegli il setup completo, assicurati che il nodo abbia RAM e disco adeguati: l’indexer è il componente che soffre di più quando le risorse sono strette.

Se stai seguendo il flusso ufficiale Wazuh, spesso la procedura prevede uno script di installazione che configura certificati e servizi in modo coordinato. Questo è utile perché evita errori banali su TLS e compatibilità tra componenti. Il punto chiave è conservare i file generati e annotare dove vengono salvati i certificati, perché dopo serviranno per manutenzione e troubleshooting.

Verifica i servizi installati:

systemctl status wazuh-indexer --no-pager
systemctl status wazuh-dashboard --no-pager

Entrambi dovrebbero risultare active (running). Se la dashboard non parte, controlla i log del servizio e la reachability verso l’indexer.

journalctl -u wazuh-dashboard -n 100 --no-pager

Configurazione TLS e accesso web

Wazuh usa TLS per proteggere il traffico tra componenti e verso la dashboard. In produzione questo non è opzionale. Anche su un laboratorio conviene mantenerlo attivo, perché ti evita di dover reimparare tutto quando sposti il sistema in rete reale.

Se la dashboard è esposta via HTTPS, verifica certificato, CN/SAN e catena:

openssl s_client -connect localhost:5601 -servername $(hostname -f)

Per un controllo rapido lato browser, apri l’URL della dashboard e verifica che il certificato sia valido e che l’accesso iniziale non mostri errori di connessione all’indexer. Se trovi pagina bianca o login che non completa il caricamento, il problema è spesso tra dashboard e indexer, non nel browser.

Se devi pubblicare il servizio dietro reverse proxy, fai attenzione agli header e al timeout. Wazuh Dashboard non va “mascherata” a caso senza verificare WebSocket, path base e redirect HTTPS. In caso di proxy, il test minimo è una risposta corretta sulla porta locale e poi una risposta corretta tramite il proxy esterno.

Creare e registrare gli agent Ubuntu

Il manager da solo serve a poco se non colleghi gli endpoint. L’agent va installato su ogni macchina da monitorare, poi registrato verso il manager. Su Ubuntu anche l’agent si installa via pacchetto, in modo analogo al manager.

sudo apt update
sudo apt -y install wazuh-agent

La configurazione dell’agent punta al manager tramite IP o hostname. Il file da controllare è in genere /var/ossec/etc/ossec.conf. Prima di modificare, fai sempre una copia del file.

sudo cp /var/ossec/etc/ossec.conf /var/ossec/etc/ossec.conf.bak

Poi imposta l’indirizzo del manager secondo la tua rete. Dopo la modifica, abilita e avvia il servizio:

sudo systemctl enable --now wazuh-agent

Controllo:

systemctl status wazuh-agent --no-pager

Per la registrazione, il metodo preciso dipende dalla versione di Wazuh installata. In molti scenari si usa il tool di enrollment o la registrazione tramite chiave. L’obiettivo è vedere l’agent comparire nella dashboard come attivo e ricevere eventi.

Verifiche funzionali dopo l’installazione

Non considerare conclusa l’installazione finché non hai verificato almeno quattro cose: servizi attivi, dashboard raggiungibile, agent connesso, evento di test visibile. Questa è la differenza tra “installato” e “operativo”.

  1. Controlla i servizi principali con systemctl status.
  2. Apri la dashboard e accedi con l’utente amministrativo iniziale.
  3. Verifica che l’indexer risponda e che il cluster sia sano.
  4. Collega almeno un agent e attendi la comparsa nello stato della console.

Per un test rapido del lato rete, puoi controllare le porte ascoltate:

sudo ss -ltnp | grep -E '(:1514|:1515|:5601|:9200|:9300)'

Le porte esatte dipendono dalla versione e dal layout scelto, ma un output coerente ti dice subito se i servizi stanno ascoltando. Se una porta critica non appare, il servizio corrispondente non è partito o è legato a un’interfaccia diversa.

Un altro controllo utile è la reachability tra componenti:

curl -kI https://localhost:5601

Atteso: risposta HTTP coerente, non timeout. Se ricevi errore di connessione, guarda prima firewall locale e stato del servizio.

Hardening minimo per un uso reale

Una volta online, riduci la superficie d’attacco. Wazuh gestisce dati sensibili di sicurezza e spesso diventa un target interessante. Non lasciare porte esposte più del necessario e limita l’accesso alla dashboard con firewall o reverse proxy.

  • Consenti solo le porte necessarie dagli host autorizzati.
  • Usa password forti e, se possibile, integrazione con autenticazione centralizzata.
  • Aggiorna regolarmente i pacchetti.
  • Monitora spazio disco e crescita degli indici.

Controlla anche i permessi sui file di configurazione e sui certificati. Le chiavi private non devono essere leggibili da utenti non privilegiati. Se devi ruotare certificati o password, pianifica una finestra di change e conserva una copia della configurazione precedente.

Troubleshooting dei problemi più comuni

Il problema più frequente è il mismatch tra componenti: manager su, indexer giù, dashboard che non si autentica, agent che non registra. In questi casi il metodo corretto è risalire layer per layer.

  1. Se la dashboard non apre, verifica prima il servizio locale e poi la porta.
  2. Se l’agent non compare, controlla connessione verso il manager e log dell’agent.
  3. Se il manager parte ma non riceve eventi, verifica firewall e porte di ascolto.
  4. Se vedi errori TLS, ricontrolla certificati e nomi host.

Log utili da consultare:

  • /var/ossec/logs/ossec.log
  • journalctl -u wazuh-manager
  • journalctl -u wazuh-dashboard
  • journalctl -u wazuh-indexer

Se vedi errori di memoria o il sistema rallenta molto, non partire da ottimizzazioni astratte: controlla prima RAM e swap, poi storage. L’indexer con poco disco o poca memoria degrada rapidamente e può bloccare l’intera piattaforma.

Gestione operativa dopo il go-live

Dopo l’installazione, il lavoro vero è operativo: aggiornamenti, backup, retention, monitoraggio e onboarding degli agent. Pianifica subito una policy di retention per gli indici, altrimenti il disco si riempie e il problema si presenta come guasto improvviso ma è in realtà prevedibile.

Ti conviene anche documentare tre cose: dove sono i certificati, come si riavviano i servizi, come si verifica lo stato sano della piattaforma. Una runbook minima evita di perdere tempo quando devi intervenire fuori orario.

Se devi aggiornare Wazuh, procedi in modo coordinato e non aggiornare a metà i componenti. Prima verifica compatibilità tra manager, indexer, dashboard e agent. Tieni sempre un rollback chiaro: snapshot VM, backup dei file di configurazione e, se possibile, finestra di manutenzione con possibilità di ripristino rapido.

Regola pratica: se non sai dire in meno di un minuto dove guardare lo stato del manager, dell’indexer e della dashboard, la piattaforma non è ancora pronta per produzione.

Checklist finale

  • Manager: servizio attivo e log puliti.
  • Dashboard: accesso HTTPS funzionante.
  • Indexer: salute del cluster verificata.
  • Agent: almeno un endpoint registrato e online.
  • Disco: spazio residuo monitorato.
  • TLS: certificati validi e coerenti con l’hostname.

Se tutti questi punti sono veri, l’installazione è davvero conclusa. Se uno solo manca, fermati e chiudi prima il problema specifico: in Wazuh i difetti di base si propagano in fretta e il sintomo finale spesso è solo la dashboard che “non va”.

Assunzione: procedura pensata per un’installazione standard su Ubuntu con componenti Wazuh ufficiali e accesso amministrativo al server.