Monitoraggio · 9 min read · Nov 17, 2025

Come configurare lo strumento di monitoraggio LibreNMS con Nginx su Ubuntu 16.04 LTS

LibreNMS è uno strumento di monitoraggio open source basato su PHP/MYSQL/SNMP. È un sistema di monitoraggio di rete completo che fornisce supporto per un’ampia gamma di hardware di rete e sistemi operativi, tra cui FreeBSD, Cisco, Linux, HP, ecc.

In questo tutorial, ti mostrerò come installare e configurare lo strumento di monitoraggio open source ‘LibreNMS’ utilizzando Nginx come server web, MariaDB come database e il server Ubuntu 16.04 come nostro server principale. Ti guideremo passo dopo passo su come installare e configurare ‘LibreNMS’ sul server Ubuntu 16.04 Xenial Xerus.

Cosa faremo

  1. Installare i pacchetti
  2. Installare il server web Nginx
  3. Installare e configurare PHP-FPM
  4. Installare e configurare MariaDB
  5. Scaricare e configurare LibreNMS
  6. Installatore web di LibreNMS
  7. Configurazione finale

Prerequisiti

  • Server Ubuntu 16.04
  • Privilegi di root

Passo 1 - Installare i pacchetti

Il primo passo che dobbiamo fare per installare gli strumenti di monitoraggio LibreNMS è installare alcuni pacchetti necessari sul server. Connettiti al tuo server e aggiorna il repository.

ssh root@hakase-labs-server  
sudo apt update

Installa tutti i pacchetti richiesti per LibreNMS dal repository di Ubuntu utilizzando il seguente comando.

apt install fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd  rrdtool git snmp graphviz

Dopo che l’installazione è completata, vai al passo successivo.

Passo 2 - Installare il server web Nginx

In questo tutorial, eseguiremo LibreNMS sotto il server web Nginx. Nginx è un potente server web disponibile nei repository di Ubuntu.

Installa nginx utilizzando il comando apt dal repository nel seguente modo.

apt install nginx

Quando è fatto, avvia il servizio e abilitalo a essere eseguito automaticamente ogni volta all’avvio del sistema.

systemctl start nginx  
systemctl enable nginx

Il server web Nginx è in esecuzione sulla porta predefinita 80. Possiamo controllare la porta utilizzando il comando netstat e controllare Nginx utilizzando il comando curl per ottenere il codice di stato HTTP, come mostrato di seguito.

netstat -plntu | grep 80  
curl -I localhost

Controlla le porte con netstat

L’installazione di Nginx è stata completata.

Passo 3 - Installare e configurare PHP-FPM

LibreNMS è uno strumento di monitoraggio delle applicazioni web basato su PHP. Offre supporto per la nuova versione di PHP 7.0, e la utilizzeremo per questa guida.

Installa PHP, PHP-FPM e tutte le estensioni/moduli necessari per l’installazione di LibreNMS utilizzando il comando apt qui sotto.

apt install php7.0-cli php7.0-mysql php7.0-gd php7.0-snmp php-pear php7.0-curl php7.0-fpm php7.0-mcrypt php7.0-json php-net-ipv4 php-net-ipv6

Successivamente, dobbiamo aggiungere alcune configurazioni ai file php.ini. Dobbiamo definire il fuso orario predefinito nel file php.ini e assicurarci che il fuso orario corrisponda al fuso orario attualmente utilizzato dal sistema.

Controlla il fuso orario attualmente utilizzato dal sistema con il seguente comando.

timedatectl

Dovresti ottenere un risultato simile al seguente.

Controlla le impostazioni del fuso orario

Puoi vedere che il server sta utilizzando il fuso orario ‘Europe/Paris‘.

Ora vai nella directory di configurazione di PHP ed edita i file php.ini per la configurazione cli e fpm.

cd /etc/php/7.0/  
vim fpm/php.ini  
vim cli/php.ini

Decommenta la riga ‘date.time‘ e cambia il valore con il nostro fuso orario di sistema ‘Europe/Paris‘.

date.time = Europe/Paris

Decommenta la configurazione cgi qui sotto, cambia il valore in 0.

cgi.fix_pathinfo = 0

Salva ed esci.

Tutta la configurazione è completa. Ora avvia il servizio e abilitalo a essere avviato ogni volta all’avvio del sistema utilizzando i seguenti comandi systemctl.

systemctl start php7.0-fpm  
systemctl enable php7.0-fpm

PHP-FPM è ora in esecuzione sul server ubuntu - sta funzionando sotto il file sock. Controllalo con il comando netstat.

netstat -pl | grep php

Controlla il processo PHP-FPM

Passo 4 - Installare e configurare MariaDB

In questo passo, installeremo il mariadb-server per il database di LibreNMS. Installeremo, configureremo e creeremo un nuovo database e un nuovo utente per l’installazione di LibreNMS.

Installa mariadb-server dal repository di ubuntu utilizzando il comando apt qui sotto.

apt install mariadb-server mariadb-client mariadb

Quando è fatto, avvia il servizio e abilitalo a essere eseguito automaticamente all’avvio del sistema, qualcosa che puoi fare utilizzando i seguenti comandi systemctl.

systemctl start mysql  
systemctl enable mysql

Il server di database mariadb è ora in esecuzione. Successivamente, dobbiamo configurare la password di root per mariadb. Possiamo utilizzare il comando ‘mysql_secure_installation’ qui sotto per configurare la password di root.

mysql_secure_installation

Ti verrà chiesto della nuova password di root - digita la tua password e premi ‘Invio’ per continuare.

Set root password? [Y/n] Y  
Remove anonymous users? [Y/n] Y  
Disallow root login remotely? [Y/n] Y  
Remove test database and access to it? [Y/n] Y  
Reload privilege tables now? [Y/n] Y

La password di root per mariadb è stata configurata.

Successivamente, dobbiamo creare un nuovo database e un utente per LibreNMS. Creeremo un nuovo database chiamato ‘librenms’, un nuovo utente chiamato ‘librenms’ con password ‘hakase-labs123’.

Accedi alla shell di mariadb utilizzando il seguente comando.

mysql -u root -p  
Type the ROOT Password:

Esegui le query mariadb qui sotto per creare un nuovo database e utente e concedere tutti i privilegi sul database al nuovo utente.

CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci;  
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'hakase-labs123';  
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';  
FLUSH PRIVILEGES;

Un nuovo database e utente per LibreNMS sono stati creati.

Aggiungi un database

Per l’installazione di LibreNMS, dobbiamo aggiungere alcune configurazioni al file di configurazione. Vai nella directory ‘/etc/mysql/‘ ed edita il file di configurazione di mariadb.

cd /etc/mysql/  
vim mariadb.conf.d/50-server.cnf

Incolla la configurazione qui sotto sotto la sezione ‘[mysqld]‘.

innodb_file_per_table=1  
sql-mode=""  
lower_case_table_names=0

Salva ed esci.

Cambia le impostazioni di MariaDB

Ora applica la nuova configurazione riavviando il servizio.

systemctl restart mysql

La configurazione del database mariadb è stata completata.

Passo 5 - Scaricare e configurare LibreNMS

In questo passo, configureremo il sistema per l’installazione di LibreNMS.

- Aggiungi nuovo utente e scarica LibreNMS

Crea un nuovo utente di sistema chiamato ‘librenms’, definisci ‘/opt/librenms’ come la directory home predefinita per l’utente e assegna il nuovo utente ‘librenms’ al gruppo www-data.

Esegui il seguente comando per fare tutto.

useradd librenms -d /opt/librenms -M -r  
usermod -a -G librenms www-data

Ora vai nella directory ‘/opt/‘ e scarica il codice sorgente di LibreNMS utilizzando il comando git.

cd /opt/  
git clone https://github.com/librenms/librenms.git librenms

Aggiungi utente librenms

Successivamente, crea una nuova directory per i file di log di libreNMS e i file rrd.

mkdir -p /opt/librenms/{logs,rrd}

Cambia i permessi di proprietà per la directory ‘rrd’ in ‘775’ e cambia il proprietario della directory ‘librenms’ all’utente e gruppo ‘librenms’.

chmod -R 775 /opt/librenms/rrd/  
chown -R librenms:librenms /opt/librenms/

Un nuovo ‘librenms’ è stato creato e il codice sorgente di LibreNMS è stato scaricato.

- Configura il Virtualhost di LibreNMS

Vai nella directory di configurazione di ‘nginx’ e crea un nuovo file di virtual host ‘librenms’ con vim.

cd /etc/nginx/  
vim sites-available/librenms

Incolla la seguente configurazione del Virtual host di LibreNMS lì.

server {  
  
    # Aggiungi il tuo nome di dominio  
    listen      80;  
    server_name librenms.irsyadf.me;  
  
    # Directory webroot di LibreNMS  
    root        /opt/librenms/html;  
    index       index.php;  
  
    # Log di LibreNMS  
    access_log  /opt/librenms/logs/access_log;  
    error_log   /opt/librenms/logs/error_log;  
    
    # Abilitare la compressione Gzip su Nginx  
    charset utf-8;  
    gzip on;  
    gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;  
    
    location / {  
        try_files $uri $uri/ /index.php?$query_string;  
    }  
    
    location /api/v0 {  
        try_files $uri $uri/ /api_v0.php?$query_string;  
    }  
  
    # PHP-FPM gestisce tutte le richieste di file .php  
    location ~ \.php {  
        include fastcgi.conf;  
        fastcgi_split_path_info ^(.+\.php)(/.+)$;  
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;  
    }  
  
    location ~ /\.ht {  
        deny all;  
    }  
}

Salva ed esci. Ora, attiva il virtualhost.

ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/

Testa la configurazione di nginx e assicurati che non ci siano errori. Quindi riavvia il servizio.

ginx -t  
systemctl restart nginx

- Configura il firewall UFW

Aggiungi nuove porte al firewall. Aggiungi ssh, http, https e la porta utilizzata da snmpd 161 tipo udp al firewall ufw.

Esegui i seguenti comandi ufw.

ufw allow ssh  
ufw allow http  
ufw allow https  
ufw allow 161/udp

Configura il firewall UFW

Avvia il firewall ufw con il comando ufw enable come mostrato di seguito.

ufw enable

Digita ‘y’ e premi ‘Invio’ per confermare. Avvia e abilitalo a essere avviato ogni volta all’avvio del sistema.

Se vuoi vedere lo stato del firewall, esegui il comando ‘ufw status’.

ufw status

Otterrai lo stato del firewall - attivo o inattivo - e l’elenco delle porte e dei servizi aggiunti al firewall.

Elenco della configurazione del firewall

Passo 6 - Installatore web di LibreNMS

Dopo che tutti i passaggi sopra sono stati completati, dobbiamo installare LibreNMS tramite il browser web. Apri il tuo browser web, digita il nome di dominio di LibreNMS ‘librenms.hakase-labs.co’ nella barra degli indirizzi e premi Invio.

- Controllo dei moduli PHP

Verrai reindirizzato alla pagina install.php che mostra il risultato dei controlli di supporto dei moduli PHP. Assicurati che tutti gli stati siano verdi come mostrato di seguito.

Installatore web di LibreNMS

Clicca su ‘Fase successiva‘ per continuare.

- Configurazione del database

Compila tutte le informazioni del database con il tuo db.

  • Utente DB: librenms
  • Password DB: hakase-labs123
  • Nome DB: librenms

Imposta i dettagli del database

E clicca su ‘Fase successiva‘.

- Importazione del database MySQL

Aspetta che lo script di installazione importi un campione di database nel nostro database - non chiudere la scheda del browser durante questo processo.

Fase 2 completata

Dopo che tutto il db è stato importato, clicca su ‘Vai ad Aggiungi Utente‘.

- Aggiungi utente amministratore

Qui, digita il tuo utente amministratore, email e password.

Aggiungi l'utente amministratore

Clicca su ‘Aggiungi Utente‘.

- Genera Configurazione di LibreNMS

Genera configurazione di LibreNMS

Clicca sul pulsante ‘Genera Config‘.

E otterrai un file di configurazione simile a quello mostrato di seguito.

Salva configurazione su file

Copia lo script di configurazione php e torna alla tua sessione ssh. Vai nella directory ‘/opt/librenms’ e crea manualmente il file ‘config.php’ utilizzando vim.

cd /etc/librenms/  
vim config.php

Incolla la configurazione lì e cambia la proprietà del file all’utente e gruppo librenms.

chown librenms:librenms config.php

Torna al tuo browser web e clicca sul pulsante ‘Finisci Installazione‘.

Ora arrivi all’ultima pagina dell’installatore web di librenms - vedi sotto.

Installazione completata

Passo 7 - Configurazione finale

Dopo che l’installazione tramite browser web è completata, dobbiamo fare alcuni altri passaggi.

- Configura SNMP

Esegui il backup del file di configurazione predefinito e copia il file di configurazione di esempio nella directory ‘/etc/snmp/‘.

mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.aseli  
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf

Modifica la nuova configurazione con vim.

vim /etc/snmp/snmpd.conf

Sostituisci la riga ‘RANDOMSTRINGGOESHERE’ con il tuo nome di comunità ‘hakaselabs’, come mostrato di seguito.

com2sec readonly  default         hakaselabs

Salva ed esci.

File di configurazione SNMP

Successivamente, dobbiamo scaricare lo script di rilevamento della distribuzione. Scaricalo utilizzando curl, quindi rendi lo script eseguibile e infine riavvia il servizio snmp.

curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro  
chmod +x /usr/bin/distro  
systemctl restart snmpd

- Configurazione di Crontab e Logrotate

Vai nella directory librenms e copia la configurazione di esempio per Crontab e Logrotate.

cd /opt/librenms/

Copia la configurazione.

cp librenms.nonroot.cron /etc/cron.d/librenms  
cp misc/librenms.logrotate /etc/logrotate.d/librenms

Ora riavvia il servizio cron e ricarica la configurazione di logrotate.

systemctl restart cron  
logrotate -f /etc/logrotate.conf

- Valida la configurazione

Aspetta un po’ di tempo finché lo script cron non viene eseguito sul sistema. Una volta fatto, valida con lo script ‘validate.php’.

Vai nella directory librenms ed esegui lo script di validazione.

cd /opt/librenms/  
./validate.php

Se la tua installazione è corretta, otterrai il risultato mostrato di seguito.

Valida l'installazione di LibreNMS

L’installazione di LibreNMS con il server web Nginx su Ubuntu 16.04 è completa.

Riferimenti

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.