51 05/04/2026 07/04/2026 7 min

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 -y

Controlla che il sistema sia effettivamente Ubuntu 24.04:

lsb_release -a

Esito 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-contrib

Verifica che il servizio sia attivo:

sudo systemctl status postgresql --no-pager

Esito atteso: stato active (running).

Ora crea database e utente dedicati. Sostituisci la password con una robusta e non riutilizzata.

sudo -u postgres psql

Dentro 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;
\q

Se 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 update

Se 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-agent

Se 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 zabbix

Se 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.bak

Apri il file:

sudo nano /etc/zabbix/zabbix_server.conf

Imposta o verifica almeno queste righe:

DBName=zabbix
DBUser=zabbix
DBPassword=PasswordMoltoForteQui

Salva 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 -v

Poi 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.ini

Verifica o imposta almeno questi parametri:

date.timezone = Europe/Rome
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M
max_execution_time = 300

Riavvia PHP-FPM dopo la modifica:

sudo systemctl restart php8.3-fpm

Esito 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/zabbix

Contenuto 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 nginx

Esito 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-agent

Controlla lo stato:

sudo systemctl status zabbix-server zabbix-agent --no-pager

Esito 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.log

Errore 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.log

Se 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.

  1. Verifica che il server Zabbix mostri lo stato verde.
  2. Controlla che l’agent locale venga rilevato.
  3. Aggiungi un host di test e verifica che i dati arrivino.
  4. 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.