Monitoraggio · 7 min read · Oct 19, 2025

Come installare Nagios Core su CentOS

Nagios è un software open-source per il monitoraggio di sistemi e reti. Nagios può monitorare l’attività di un host e dei suoi servizi e fornire un avviso/alert se qualcosa va storto sul server. Nagios può funzionare su sistemi operativi Linux e utilizzeremo il server CentOS 8.

Questo tutorial ti mostrerà come installare il Nagios Core su un sistema CentOS 8. Installeremo il Nagios Core 4.4.5 dal repository EPEL e poi aggiungeremo il monitor host CentOS 8 al server Nagios.

Prerequisiti

  • 2 server CentOS 8 - server Nagios - nome host: hakase-nagios con un IP: 10.5.5.20
  • client CentOS - nome host: client01 con un IP: 10.5.5.21
  • Privilegi di root

Cosa faremo:

  • Installare il repository EPEL
  • Installare Nagios Core 4.4.5
  • Installare il plugin Nagios e il plugin NRPE
  • Aggiungere l’host da monitorare al server Nagios
  • Aggiungere la configurazione per il monitor host
  • Testare

Passo 1 - Installare il repository EPEL

Per prima cosa, aggiungeremo il repository EPEL (Extra Package for Enterprise Linux) al sistema CentOS 8. Installeremo i pacchetti Nagios dal repository EPEL.

Installa il repository EPEL utilizzando il comando dnf qui sotto.

sudo dnf install epel-release

Una volta completata l’installazione, controlla tutti i repository disponibili sul sistema.

sudo dnf repolist

E hai aggiunto il repository EPEL al sistema CentOS 8.

Passo 2 - Installare e configurare Nagios Core

In questo passo, installeremo e configureremo l’ultima versione stabile del server Nagios 4.4.5 sul sistema CentOS 8. E utilizzeremo il pacchetto nagios fornito dal repository EPEL.

Controlla tutti i pacchetti disponibili denominati ‘nagios’.

dnf search nagios

Poi controlla i dettagli del pacchetto ‘nagios’.

dnf info nagios

E otterrai dettagli sul pacchetto nagios come di seguito.

- Installare e configurare Nagios Core 4.4.5

Ora installa ‘nagios’ utilizzando il comando dnf qui sotto.

sudo dnf install nagios

Una volta completata l’installazione, vai nella directory ‘/etc/nagios’ ed edita il file di configurazione ‘nagios.cfg’.

cd /etc/nagios/  
vim nagios.cfg

Decommenta la seguente riga.

cfg_dir=/etc/nagios/servers

Salva e chiudi.

Ora crea una nuova directory per memorizzare tutta la configurazione del monitor host.

mkdir -p /etc/nagios/servers

Poi edita il file di configurazione dei contatti ‘objects/contacts.cfg’.

vim objects/contacts.cfg

Cambia l’indirizzo email con il tuo.

email       [email protected]

Salva e chiudi.

E hai configurato il server Nagios.

- Configurare l’autenticazione di Nagios

Per l’autenticazione, Nagios utilizza l’autenticazione httpd di base fornita dal server web Apache2.

Ora crea una nuova autenticazione di base apache per l’utente ‘nagiosadmin’ utilizzando il comando htpasswd qui sotto.

htpasswd  /etc/nagios/passwd nagiosadmin

Digita e ripeti la tua password forte, e l’autenticazione di base per il server Nagios è stata creata.

Successivamente, vai nella directory ‘/var/www/html’ e crea il file index.html.

cd /var/www/html  
echo "This is index.html for Apache" > index.html

Poi avvia il servizio httpd e aggiungilo all’avvio del sistema.

systemctl enable --now httpd  
systemctl status httpd

E hai creato un nuovo utente ‘nagiosadmin’ per il server Nagios.

- Configurare il firewall

Aggiungi i nuovi servizi http e https alla lista dei servizi firewalld.

firewall-cmd --add-service=http --permanent  
firewall-cmd --add-service=https --permanent

Ricarica il firewalld.

firewall-cmd --reload

Ora hai aggiunto i servizi http e https al firewalld. Di conseguenza, il server Nagios può essere accessibile dal browser web.

Passo 3 - Installare il plugin NRPE e i plugin Nagios

Il NRPE (Nagios Remote Plugin Executor) è un agente Nagios che consente a un sistema remoto di eseguire script ‘Nagios Plugins’ sul sistema di monitoraggio remoto.

Installa i plugin Nagios e i plugin NRPE utilizzando il seguente comando.

sudo dnf install nagios-plugins nrpe nagios-plugins-nrpe

Una volta completata l’installazione, installeremo alcuni dei plugin Nagios per il monitoraggio di base del server, inclusi il servizio ssh, lo spazio su disco, il login utente, ecc.

Per completare tutti i plugin Nagios disponibili, esegui il comando qui sotto.

dnf search nagios-plugins

Ora puoi installare i plugin Nagios utilizzando il comando bash loop qui sotto.

for i in users uptime ssh ping procs load http swap disk; do dnf install nagios-plugins-$i -y; done

Una volta completata l’installazione, vai nella directory ‘/etc/nagios’ ed edita il file di configurazione ‘objects/commands.cfg’.

cd /etc/nagios/  
vim objects/commands.cfg

Incolla la seguente configurazione alla fine della riga.

define command{  
        command_name check_nrpe  
        command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$  
}

Salva e chiudi.

Ora avvia il servizio Nagios e aggiungilo all’avvio del sistema.

systemctl enable --now nagios

Dopo di che, controlla lo stato del servizio Nagios.

systemctl status nagios

Otterrai che il servizio Nagios è attivo e funzionante.

Ora apri il tuo browser web e digita l’URL del server Nagios come di seguito.

http://10.5.5.20/nagios/

Accedi con l’utente ‘nagiosadmin’ e la tua password.

Una volta effettuato l’accesso, otterrai il dashboard di Nagios come di seguito.

Di conseguenza, hai installato il server Nagios 4.4.5 sul sistema CentOS 8.

Passo 4 - Aggiungere l’host da monitorare al server Nagios

In questo passo, aggiungeremo il sistema CentOS 8 al server Nagios. Aggiungeremo il server CentOS 8 ‘client01’ con indirizzo IP ‘10.5.5.21’ al server Nagios.

Per aggiungere l’host al server Nagios, dovrai installare il NRPE e i plugin Nagios sul server.

Sul sistema ‘client01’, installa il server NRPE utilizzando il seguente comando.

sudo dnf install nrpe

Dopo di che, installa alcuni dei plugin Nagios utilizzando il comando bash loop qui sotto.

for i in users uptime ssh ping procs load http swap disk; do dnf install nagios-plugins-$i -y; done

Una volta completata l’installazione, vai nella directory ‘/etc/nagios’ ed edita il file di configurazione nrpe ‘nrpe.conf’.

cd /etc/nagios/  
vim nrpe.conf

Decommenta la riga ‘server_address’ e cambia il valore con l’indirizzo IP ‘client01’ ‘10.5.5.21’.

server_address = 10.5.5.71

Nella riga ‘allowed_hosts’, aggiungi l’indirizzo IP del server Nagios ‘10.5.5.20’.

allowed_hosts=127.0.0.1,::1,10.5.5.70

Definisci alcuni comandi Nagios per il monitoraggio di base come di seguito.

command[check_root]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /
command[check_ping]=/usr/lib64/nagios/plugins/check_ping -H 10.5.5.71 -w 100.0,20% -c 500.0,60% -p 5
command[check_ssh]=/usr/lib64/nagios/plugins/check_ssh -4 10.5.5.71
command[check_http]=/usr/lib64/nagios/plugins/check_http -I 10.5.5.71

Salva e chiudi.

Ora avvia il servizio NRPE e aggiungilo all’avvio del sistema.

systemctl enable --now nrpe

Controlla lo stato del servizio NRPE.

systemctl status nrpe

E otterrai che il servizio NRPE è attivo e funzionante.

Successivamente, aggiungi la porta nrpe al firewalld e ricarica la configurazione del firewalld.

firewall-cmd --add-port=5666/tcp --permanent  
firewall-cmd --reload

E hai completato la configurazione NRPE sul monitor host ‘client01’.

Ora torna al terminale del server Nagios e controlla l’host ‘client01’ utilizzando il comando nrpe di nagios qui sotto.

/usr/lib64/nagios/plugins/check_nrpe -H 10.5.5.21  
/usr/lib64/nagios/plugins/check_nrpe -H 10.5.5.21 -c check_ping

Di conseguenza, ottieni la versione NRPE sull’host ‘client01’ e il comando ping per ‘client01’ è stato eseguito con successo.

Passo 5 - Aggiungere la configurazione per il monitor host

Torna al server Nagios, vai nella directory ‘/etc/nagios/server’ e crea una nuova configurazione ‘client01.cfg’.

cd /etc/nagios/servers/  
vim client01.cfg

Incolla la seguente configurazione al suo interno.

define host {  
        use                             linux-server  
        host_name                       client01  
        alias                           CentOS Host  
        address                         10.5.5.12  
        register                        1  
}  
  
define service {  
      host_name                       client01  
      service_description             PING  
      check_command                   check_nrpe!check_ping  
      max_check_attempts              2  
      check_interval                  2  
      retry_interval                  2  
      check_period                    24x7  
      check_freshness                 1  
      contact_groups                  admins  
      notification_interval            2  
      notification_period              24x7  
      notifications_enabled            1  
      register                        1  
}  
  
define service {  
      host_name                       client01  
      service_description             Check Users  
      check_command                   check_nrpe!check_users  
      max_check_attempts              2  
      check_interval                  2  
      retry_interval                  2  
      check_period                    24x7  
      check_freshness                 1  
      contact_groups                  admins  
      notification_interval            2  
      notification_period              24x7  
      notifications_enabled            1  
      register                        1  
}  
  
define service {  
      host_name                       client01  
      service_description             Check SSH  
      check_command                   check_nrpe!check_ssh  
      max_check_attempts              2  
      check_interval                  2  
      retry_interval                  2  
      check_period                    24x7  
      check_freshness                 1  
      contact_groups                  admins  
      notification_interval            2  
      notification_period              24x7  
      notifications_enabled            1  
      register                        1  
}  
  
define service {  
      host_name                       client01  
      service_description             Check Root / Disk  
      check_command                   check_nrpe!check_root  
      max_check_attempts              2  
      check_interval                  2  
      retry_interval                  2  
      check_period                    24x7  
      check_freshness                 1  
      contact_groups                  admins  
      notification_interval            2  
      notification_period              24x7  
      notifications_enabled            1  
      register                        1  
}  
  
define service {  
      host_name                       client01  
      service_description             Check HTTP  
      check_command                   check_nrpe!check_http  
      max_check_attempts              2  
      check_interval                  2  
      retry_interval                  2  
      check_period                    24x7  
      check_freshness                 1  
      contact_groups                  admins  
      notification_interval            2  
      notification_period              24x7  
      notifications_enabled            1  
      register                        1  
}

Salva e chiudi.

Ora riavvia il servizio Nagios.

sudo systemctl restart nagios

E hai aggiunto la configurazione per l’host ‘client01’ al server Nagios.

Passo 6 - Testare

Apri il tuo browser web e accedi al dashboard di Nagios.

http://10.5.5.20/nagios/

Clicca sul menu ‘Hosts’ e vedrai ‘client01’ nell’elenco degli host.

Ora clicca sul nome dell’host ‘client01’ e otterrai dettagli sui servizi di monitoraggio per il server ‘client01’.

Di conseguenza, hai installato Nagios 4.4.5 sul sistema CentOS 8 e hai aggiunto l’host da monitorare ‘client01’ al server Nagios.

Riferimenti

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.