Monitoraggio · 11 min read · Oct 18, 2025
Come installare lo strumento di monitoraggio Nagios 4.3.x su Debian 9
Questo tutorial ti mostrerà come installare e configurare l’ultima versione di Nagios Core, attualmente 4.3.4, dai sorgenti in Debian 9.1, nome in codice Stretch.
Nagios, noto anche come Nagios Core, è uno strumento di monitoraggio di rete Open Source gratuito, attivamente mantenuto dai suoi sviluppatori, progettato per monitorare un’intera infrastruttura di rete. Nagios può monitorare quasi ogni dispositivo di rete, purché il dispositivo abbia una connessione di rete configurata, come router, switch, server, desktop, firewall, dispositivi IoT. Oltre a monitorare i dispositivi per determinare il loro stato di rete, Nagios può anche monitorare servizi di rete, applicazioni o altri compiti specifici relativi ai sistemi operativi e può essere configurato per inviare avvisi via mail o SMS per informare gli amministratori di rete su possibili guasti di dispositivi, interruzioni o malfunzionamenti dei servizi.
Requisiti
- Debian 9.1 installato su una macchina bare-metal o su un server privato virtuale. Preferibilmente, l’installazione deve essere eseguita con requisiti software minimi.
- La scheda di interfaccia di rete configurata con un indirizzo IP statico.
- Accesso all’account root o a un utente con privilegi di account root tramite sudo.
- Un nome di dominio, privato o pubblico, con i corretti record DNS A configurati. Nel caso in cui non hai un server DNS configurato presso la tua sede, puoi accedere a Nagios tramite l’indirizzo IP del server.
Configurazione iniziale
Prima di iniziare a installare Nagios dai sorgenti, assicurati che il sistema soddisfi tutti i requisiti software per compilare e installare Nagios. Nel primo passaggio, aggiorna i repository di sistema e i pacchetti software emettendo il comando sottostante.
apt updateapt upgrade
Nel passaggio successivo, avvia un nuovo comando per installare alcune utilità necessarie che verranno utilizzate per gestire ulteriormente il sistema dalla riga di comando.
apt install wget unzip zip bash-completionN ext, imposta il nome per il tuo sistema eseguendo il seguente comando:
hostnamectl set-hostname nagios.server.lanVerifica il nome host della macchina e il file hosts emettendo i comandi sottostanti.
hostnamectlcat /etc/hostnamecat /etc/hostsInfine, riavvia il sistema per applicare il nuovo nome host.
init 6Nagios è un’applicazione di monitoraggio basata sul web con alcune parti scritte nel linguaggio di programmazione server-side PHP e altri programmi CGI. Per eseguire gli script PHP di Nagios, deve essere installato e operativo nel sistema un server web, come Apache HTTP server, e un gateway di elaborazione PHP. Per installare il server web Apache e l’interprete PHP insieme a tutti i moduli PHP richiesti da Nagios 4 per funzionare correttamente, emetti il seguente comando nella console del server.
apt install apache2 libapache2-mod-php7.0 php7.0Dopo che Apache e PHP sono stati installati, verifica se il server web è attivo e in ascolto per connessioni di rete sulla porta 80 emettendo il seguente comando con privilegi di root.
netstat –tlpnNel caso in cui l’utilità di rete netstat non sia installata per impostazione predefinita nel tuo sistema Debian 9, esegui il comando sottostante per installarla.
apt install net-tools
Ispezionando l’output del comando netstat puoi vedere che il server web apache è in ascolto per connessioni di rete in entrata sulla porta 80.
Nel caso in cui tu abbia un firewall abilitato sul tuo sistema, come l’applicazione firewall UFW, dovresti aggiungere una nuova regola per consentire al traffico HTTP di passare attraverso il firewall emettendo il seguente comando.
ufw allow WWWoppure
ufw allow 80/tcpNel caso in cui tu voglia utilizzare le regole raw di iptables per consentire il traffico in entrata sulla porta 80 nel firewall in modo che i visitatori possano navigare nell’interfaccia web di Nagios Core, aggiungi la seguente regola.
apt-get install -y iptables-persistentiptables -I INPUT -p tcp --destination-port 80 -j ACCEPTsystemctl iptables-persistent savesystemctl iptables-persistent reloadSuccessivamente, abilita e applica i seguenti moduli Apache richiesti dall’applicazione web Nagios per funzionare correttamente, emettendo il seguente comando.
a2enmod rewrite headers cgisystemctl restart apache2
Infine, verifica se la pagina web predefinita del server Apache può essere visualizzata nel browser del tuo client visitando l’indirizzo IP della tua macchina Debian o il nome di dominio tramite il protocollo HTTP, come mostrato nell’immagine sottostante. Se non conosci l’indirizzo IP della tua macchina, esegui i comandi ifconfig o ip a.

Nel passaggio successivo, dobbiamo apportare alcune ulteriori modifiche al file di configurazione predefinito di PHP per assicurarci che l’impostazione del fuso orario di PHP sia configurata correttamente e corrisponda alla tua posizione fisica. Apri il file /etc/php/7.0/apache2/php.ini per la modifica e assicurati che le seguenti righe siano impostate come segue.
date.timezone = Europe/LondonSostituisci la variabile del fuso orario in base al tuo orario fisico consultando l’elenco dei fusi orari fornito dalla documentazione PHP al seguente link http://php.net/manual/en/timezones.php.
Riavvia il demone apache per applicare le modifiche.
systemctl restart apache2Dopo aver apportato le modifiche richieste, crea un file di info php e riavvia il demone apache per applicare le modifiche emettendo i seguenti comandi.
echo ''| tee /var/www/html/info.phpsystemctl restart apache2Controlla se il fuso orario PHP è stato configurato correttamente visitando il file dello script phpinfo da un browser al seguente URL, come illustrato nell’immagine sottostante. Scorri verso il basso fino all’impostazione della data per controllare l’impostazione del fuso orario php.

Installa Nagios Core
Prima di scaricare e compilare Nagios Core dai sorgenti, assicurati prima di installare i seguenti pacchetti pre-requisiti nel tuo sistema, emettendo il comando sottostante.
apt install autoconf gcc libc6 make apache2-utils libgd-devDopo che tutte le dipendenze e i pacchetti necessari per compilare Nagios dai sorgenti sono stati installati nel tuo sistema Debian, visita il sito ufficiale di Nagios all’indirizzo https://www.nagios.org/downloads/nagios-core/ e scarica l’ultima versione dell’archivio sorgente stabile di Nagios Core emettendo l’utilità wget, come mostrato nel seguente estratto di comando.
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.3.4.tar.gzDopo che l’archivio tar sorgente di Nagios è stato scaricato, estrai l’archivio tar ed entra nella directory nagios estratta, con i seguenti comandi. Esegui il comando ls all’interno della directory nagios estratta per elencare i file sorgente.
tar xzf nagios-4.3.4.tar.gzcd nagios-4.3.4/ls
Mentre sei all’interno della directory dei sorgenti estratti di Nagios, avvia il processo di compilazione di Nagios dai sorgenti emettendo i seguenti comandi. Prima, configura Nagios per essere compilato con il percorso di configurazione http del server web Apache che punta alla directory sites-enabled.
./configure --with-httpd-conf=/etc/apache2/sites-enabledSuccessivamente, compila Nagios emettendo il seguente comando, come illustrato nelle immagini sottostanti.
make all

Successivamente, crea l’utente e il gruppo di sistema nagios e aggiungi l’account nagios all’utente runtime di Apache in modo che l’utente nagios abbia i permessi necessari per accedere alle risorse web.
useradd nagiosusermod -a -G nagios www-dataOra, inizia a installare i file binari di Nagios, gli script CGI e i file HTML emettendo il seguente comando. L’output finale del comando make install dovrebbe visualizzare le posizioni binarie, come mostrato nell’immagine sottostante.
make install
Successivamente, installa i file di inizializzazione del demone Nagios systemd e abilita il servizio nagios a livello di sistema emettendo i seguenti comandi.
make install-initsystemctl enable nagios.service
Inoltre, installa e configura il file di comando esterno di Nagios eseguendo il comando sottostante.
make install-commandmodeSuccessivamente, esegui il seguente comando per installare i file di configurazione di esempio di Nagios che sono richiesti dal demone Nagios per avviarsi e funzionare correttamente.
make install-config
Infine, installa il file di configurazione del server web Apache per Nagios, che sarà situato nella directory /etc/apacahe2/sites-enabled/, eseguendo il comando sottostante.
make install-webconf
Crea l’account utente nagiosadmin con la password corrispondente richiesta dal server web Apache per poter effettuare il login nello strumento web di Nagios emettendo il seguente comando.
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadminPer accedere al pannello web di Nagios, prima riavvia il server HTTP Apache e avvia il servizio Nagios emettendo i seguenti comandi.
systemctl restart apache2systemctl start nagiosQuindi, accedi all’interfaccia web di Nagios aprendo un browser e visitando l’indirizzo IP del tuo server o il nome di dominio o FQDN e aggiungi il percorso URL /nagios tramite il protocollo HTTP, come illustrato negli screenshot sottostanti. Usa l’utente nagiosadmin con la password configurata in precedenza per questo utente per effettuare il login nell’interfaccia web di Nagios.


Installa i plugin di Nagios
Il motore Nagios è ora installato nel sistema. Tuttavia, il software Nagios non è ancora operativo, poiché i plugin utilizzati per controllare host e servizi non sono installati. Questo comportamento può essere osservato navigando nel menu Hosts dove noterai gli errori dei plugin, come mostrato nello screenshot sottostante.

Per compilare e installare alcuni plugin di base di Nagios dai sorgenti, assicurati prima di installare le seguenti librerie e dipendenze emettendo il seguente comando.
apt install libmcrypt-dev make libssl-dev bc gawk dc build-essential snmp libnet-snmp-perl gettext libldap2-dev smbclient fping default-libmysqlclient-devDopo che tutti i pacchetti di dipendenza sono stati installati nel tuo sistema, vai alla pagina del repository dei plugin di Nagios visitando il seguente indirizzo https://github.com/nagios-plugins/nagios-plugins/releases e scarica l’ultima archivio sorgente con l’aiuto dell’utilità della riga di comando wget, come mostrato nel seguente esempio di comando.
wget https://github.com/nagios-plugins/nagios-plugins/archive/release-2.2.1.tar.gzQuindi, estrai l’archivio sorgente compresso dei plugin di Nagios ed entra nella directory nagios-plugins estratta eseguendo i seguenti comandi.
tar xfz release-2.2.1.tar.gzcd nagios-plugins-release-2.2.1/
Per compilare e installare i plugin di Nagios dai sorgenti, esegui i seguenti script e comandi con privilegi di root, come mostrato nell’estratto sottostante.
./tools/setup./configuremakemake installDopo che tutti i plugin sono stati installati, puoi trovarli nel percorso di sistema /usr/local/nagios/libexec/. Emetti il comando ls per esaminare tutto il contenuto della directory /usr/local/nagios/libexec/ e vedere quali plugin sono disponibili per Nagios nel tuo sistema.
ls /usr/local/nagios/libexec/
Affinché il motore Nagios possa rilevare e utilizzare i plugin installati, devi riavviare e controllare lo stato del servizio nagios con i seguenti comandi.
systemctl restart nagios.servicesystemctl status nagios.servicePer testare se i plugin di Nagios funzionano come previsto, accedi di nuovo all’interfaccia web di Nagios aprendo un browser e visitando l’indirizzo IP del tuo server, FQDN o nome di dominio e naviga nel menu Hosts o Services, come illustrato nello screenshot sottostante. Gli host e i servizi monitorati dovrebbero ora essere controllati dai plugin e dovrebbero visualizzare l’output corretto, a seconda dello stato di uscita del comando del plugin. I colori visualizzati sono: verde per OK, giallo per Avviso e rosso per Critico.

Per utilizzare il protocollo HTTPS per accedere all’interfaccia web del motore Nagios tramite una connessione sicura, emetti il seguente comando per abilitare il modulo SSL del server web Apache e il file di configurazione del sito SSL.
a2enmod ssla2ensite default-ssl.confSuccessivamente, per forzare i visitatori a essere automaticamente reindirizzati al protocollo HTTPS ogni volta che visitano l’interfaccia web di Nagios dai loro browser, apri il file /etc/apache2/sites-enabled/000-default.conf per la modifica e aggiungi le seguenti regole di riscrittura dopo l’istruzione DocumentRoot come mostrato nell’esempio sottostante.
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*) https://%{HTTP_HOST}/$1
Infine, riavvia il demone Apache per applicare tutte le regole configurate finora e visita l’interfaccia web di Nagios tramite il protocollo HTTP.
systemctl restart apache2.servicePer controllare se Apache sta ascoltando sulla porta HTTPS, esegui il comando netstat e cerca il binding della porta 443, come mostrato nell’immagine sottostante.
netstat -tlpnNel caso in cui l’applicazione firewall UFW blocchi le connessioni di rete in entrata sulla porta HTTPS, dovresti aggiungere una nuova regola per consentire al traffico HTTPS di passare attraverso il firewall emettendo il seguente comando.
ufw allow 'WWW Full'oppure
ufw allow 443/tcpNel caso in cui tu stia eseguendo un firewall iptables per proteggere il tuo sistema Debian, aggiungi la seguente regola per consentire il traffico in entrata sulla porta 443 nel firewall in modo che i visitatori possano navigare nell’interfaccia web di Nagios Core.
iptables -I INPUT -p tcp --destination-port 443 -j ACCEPTsystemctl iptables-persistent savesystemctl iptables-persistent reloadOra, dovresti essere automaticamente reindirizzato al pannello web di Nagios tramite il protocollo HTTPS. Poiché stai utilizzando le coppie di certificati auto-firmati emesse da Apache durante l’installazione, un avviso di errore dovrebbe essere visualizzato nel browser. Accetta l’avviso del browser e accedi a Nagios con le credenziali configurate in precedenza, come mostrato nello screenshot sottostante.

Per aggiungere un nuovo host da monitorare con Nagios, apri il file di configurazione /usr/local/nagios/etc/objects/localhost.cfg per la modifica e aggiungi il nuovo dispositivo dopo la definizione di localhost, come mostrato nell’esempio sottostante.
define host{
use linux-server
host_name router
alias router
address 192.168.1.1
}
Sostituisci le variabili host_name, alias e indirizzo IP di conseguenza e riavvia il demone Nagios per caricare la nuova definizione dell’host e applicare le modifiche.
systemctl restart nagiosAspetta qualche minuto e naviga nel menu Hosts nell’interfaccia web di Nagios per controllare lo stato del dispositivo, come illustrato nell’immagine sottostante.

Tutto qui! Hai installato e configurato con successo il motore Nagios dai sorgenti in Debian 9. Puoi iniziare ad aggiungere i dispositivi di rete della tua organizzazione, server o servizi critici da monitorare con Nagios. Per altre configurazioni personalizzate riguardanti Nagios Core e i plugin di Nagios, visita le pagine di documentazione al seguente link https://support.nagios.com/kb/category.php?id=12
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.