Introduzione
Zabbix Server è una delle soluzioni più solide per monitorare server, servizi, reti e applicazioni. Su Ubuntu 24.04 l’installazione è abbastanza lineare, ma conviene seguire un ordine preciso: prima prepari il sistema, poi installi il database, quindi il server Zabbix, il frontend web e infine verifichi tutto con controlli pratici.
In questa guida uso una base comune e stabile: PostgreSQL come database, Nginx come web server e PHP-FPM per il frontend. È una combinazione pulita, veloce e adatta a molte installazioni reali.
Prerequisiti
- Ubuntu 24.04 aggiornato.
- Accesso root o utente con privilegi sudo.
- Hostname valido e IP statico o comunque stabile.
- Porta 10051 libera per Zabbix Server e porta 80/443 per il frontend web.
Prima di iniziare, è buona norma avere un backup o almeno uno snapshot della VPS, soprattutto se il server ospita già altri servizi.
1. Aggiornamento del sistema
Parti sempre dal refresh dei pacchetti. Su un server pulito questo evita errori di dipendenze e allinea i repository alla versione corretta.
sudo apt update
sudo apt upgrade -yControlla che il sistema sia effettivamente Ubuntu 24.04:
lsb_release -aEsito atteso: versione 24.04 o nome in codice compatibile.
2. Installazione del database PostgreSQL
Zabbix ha bisogno di un database affidabile. PostgreSQL è una scelta molto solida, soprattutto per installazioni che devono crescere nel tempo.
sudo apt install -y postgresql postgresql-contribVerifica che il servizio sia attivo:
sudo systemctl status postgresql --no-pagerEsito atteso: stato active (running).
Ora crea database e utente dedicati. Sostituisci la password con una robusta e non riutilizzata.
sudo -u postgres psqlDentro la shell PostgreSQL esegui:
CREATE DATABASE zabbix OWNER postgres ENCODING 'UTF8';
CREATE USER zabbix WITH ENCRYPTED PASSWORD 'PasswordMoltoForteQui';
GRANT ALL PRIVILEGES ON DATABASE zabbix TO zabbix;
\qSe preferisci un utente dedicato con ownership coerente, puoi assegnare anche la proprietà al nuovo utente, ma questa configurazione base è già funzionale.
3. Aggiunta del repository Zabbix
I pacchetti Zabbix nei repository standard spesso non sono la versione desiderata. Conviene usare il repository ufficiale per Ubuntu 24.04.
Scarica il pacchetto del repository ufficiale Zabbix più adatto alla tua release. Il nome del file può cambiare nel tempo, quindi verifica sempre quello indicato nella documentazione ufficiale di Zabbix per Ubuntu 24.04.
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.0+ubuntu24.04_all.deb
sudo dpkg -i zabbix-release_latest_7.0+ubuntu24.04_all.deb
sudo apt updateSe il link dovesse cambiare, scarica il pacchetto corretto dal repository ufficiale e ripeti l’installazione. Il controllo importante è che apt update non mostri errori sul repository Zabbix.
4. Installazione di Zabbix Server, frontend e agent
A questo punto installa i componenti principali: server, frontend web, script SQL e agent locale. L’agent è utile anche sul server stesso per monitorarlo.
sudo apt install -y zabbix-server-pgsql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agentSe stai usando Nginx invece di Apache, il pacchetto zabbix-apache-conf non è quello ideale per la parte web. In quel caso puoi comunque usare il frontend PHP con Nginx e PHP-FPM, ma la configurazione va fatta manualmente. In questa guida proseguo con Nginx e PHP-FPM, perché è una soluzione più pulita per molti ambienti moderni.
5. Configurazione del database Zabbix
Ora importa lo schema iniziale nel database. Questo passaggio può richiedere qualche minuto.
zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u postgres psql zabbixSe il comando termina senza errori, lo schema è stato importato correttamente.
Modifica il file di configurazione del server Zabbix per indicare le credenziali del database. Prima fai un backup.
sudo cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bakApri il file:
sudo nano /etc/zabbix/zabbix_server.confImposta o verifica almeno queste righe:
DBName=zabbix
DBUser=zabbix
DBPassword=PasswordMoltoForteQuiSalva e chiudi il file. Il controllo successivo sarà l’avvio del servizio senza errori di autenticazione al database.
6. Configurazione di PHP per il frontend
Il frontend web di Zabbix richiede alcune impostazioni PHP corrette, in particolare fuso orario, memoria e limiti compatibili con l’interfaccia.
Su Ubuntu 24.04 con PHP recente, il file di configurazione dipende dalla versione installata. Individua il file con un controllo rapido:
php -vPoi modifica il file PHP-FPM corretto, ad esempio per PHP 8.3:
sudo cp /etc/php/8.3/fpm/php.ini /etc/php/8.3/fpm/php.ini.bak
sudo nano /etc/php/8.3/fpm/php.iniVerifica o imposta almeno questi parametri:
date.timezone = Europe/Rome
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M
max_execution_time = 300Riavvia PHP-FPM dopo la modifica:
sudo systemctl restart php8.3-fpmEsito atteso: servizio in stato active (running).
7. Configurazione di Nginx
Se vuoi usare Nginx, crea un server block dedicato per Zabbix. Prima fai un backup della configurazione esistente o prepara un file nuovo dedicato.
sudo nano /etc/nginx/sites-available/zabbixContenuto base consigliato:
server {
listen 80;
server_name zabbix.tuodominio.it;
root /usr/share/zabbix;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location ~ /(conf|include|locale|vendor)/ {
deny all;
}
}Abilita il sito e ricarica Nginx:
sudo ln -s /etc/nginx/sites-available/zabbix /etc/nginx/sites-enabled/zabbix
sudo nginx -t
sudo systemctl reload nginxEsito atteso: nginx -t restituisce syntax is ok e test is successful.
Se il tuo sistema usa un socket PHP diverso, verifica il percorso reale con:
ls /run/php/Il socket indicato in Nginx deve corrispondere alla versione PHP installata.
8. Avvio e abilitazione dei servizi
A questo punto avvia Zabbix Server e l’agent, poi abilitali al boot.
sudo systemctl enable --now zabbix-server zabbix-agentControlla lo stato:
sudo systemctl status zabbix-server zabbix-agent --no-pagerEsito atteso: entrambi i servizi devono risultare active (running).
Se Zabbix Server non parte, il motivo più frequente è un errore nel database, nella password o nello schema non importato correttamente.
9. Verifica dei log principali
Prima di aprire il browser, controlla i log essenziali. È il modo più rapido per capire se qualcosa non torna.
sudo tail -n 50 /var/log/zabbix/zabbix_server.logErrore tipico da cercare: problemi di connessione al database, permessi insufficienti o tabelle mancanti.
Controlla anche il log di Nginx se la pagina non si apre:
sudo tail -n 50 /var/log/nginx/error.logSe il frontend mostra errore 502 o schermata vuota, spesso il problema è nel socket PHP-FPM o nella configurazione PHP.
10. Accesso al frontend web
Apri nel browser l’indirizzo del server, ad esempio http://zabbix.tuodominio.it. Se tutto è corretto, comparirà il wizard di installazione di Zabbix.
Nel wizard verifica in particolare:
- Controllo dei prerequisiti PHP.
- Connessione al database PostgreSQL.
- Configurazione del server Zabbix.
- Impostazione del nome host del frontend.
Le credenziali di accesso predefinite, nelle installazioni standard, sono spesso Admin come utente e zabbix come password iniziale. Se la tua versione o la tua procedura differiscono, segui quanto mostrato dal wizard o dalla documentazione del pacchetto installato.
11. Controlli post-installazione
Dopo il primo accesso, completa alcuni controlli pratici per capire se la piattaforma è sana.
- Verifica che il server Zabbix mostri lo stato verde.
- Controlla che l’agent locale venga rilevato.
- Aggiungi un host di test e verifica che i dati arrivino.
- Controlla la coda degli item e gli eventuali errori di polling.
Se vuoi monitorare anche il server stesso, aggiungi l’host locale e usa il template Linux by Zabbix agent oppure il template equivalente disponibile nella tua versione.
12. Hardening minimo consigliato
Una volta funzionante, conviene mettere in sicurezza l’installazione con poche misure concrete.
- Usa una password forte per il database e per l’account Zabbix.
- Abilita HTTPS sul frontend con un certificato valido.
- Limita l’accesso alla porta 10051 solo alle reti necessarie.
- Tieni aggiornati Ubuntu, Zabbix e i pacchetti PHP.
- Imposta backup regolari del database PostgreSQL.
Se il server è esposto su Internet, valuta anche un firewall host-based come UFW o le regole del provider per ridurre la superficie d’attacco.
13. Problemi comuni e soluzioni rapide
Se il frontend non si carica, il primo controllo è il web server: nginx -t e poi il log errori. Se Zabbix Server non parte, quasi sempre il problema è nel database o nel file /etc/zabbix/zabbix_server.conf. Se la pagina del frontend mostra errori PHP, controlla la timezone e la versione di PHP-FPM in uso.
Se vuoi un metodo rapido di diagnosi, usa questo ordine: servizio web, PHP-FPM, database, poi Zabbix Server. È il percorso più veloce per isolare il guasto senza cambiare più cose insieme.
Conclusione
Con Ubuntu 24.04, PostgreSQL, Nginx e PHP-FPM puoi ottenere un’installazione di Zabbix Server stabile, pulita e facile da mantenere. La parte più importante non è solo installare i pacchetti, ma verificare ogni passaggio con un controllo reale: stato dei servizi, log, accesso al frontend e primi dati raccolti.
Se la base è corretta, Zabbix diventa uno strumento affidabile per monitorare host, servizi e performance senza complicazioni inutili.
Commenti (0)
Nessun commento ancora.
Segnala contenuto
Elimina commento
Eliminare definitivamente questo commento?
L'azione non si può annullare.