Monitoraggio Server · 5 min read · Oct 20, 2025
Monitoraggio del Server con Shinken su Ubuntu 16.04
Shinken è un framework di monitoraggio di computer e reti open source scritto in python e compatibile con Nagios. Shinken può essere utilizzato su tutti i sistemi operativi che possono eseguire applicazioni python come Linux, Unix e Windows. Shinken è stato scritto da Jean Gabes come prova di concetto per una nuova architettura di Nagios, ma è stato rifiutato dall’autore di Nagios ed è diventato uno strumento indipendente di monitoraggio di rete e sistema che rimane compatibile con Nagios.
In questo tutorial, ti mostrerò come installare Shinken da sorgente e aggiungere un host Linux al sistema di monitoraggio. Utilizzerò Ubuntu 16.04 Xenial Xerus come sistema operativo per il server Shinken e l’host monitorato.
Passo 1 - Installare il Server Shinken
Shinken è un framework python, possiamo installarlo con pip o installarlo da sorgente. In questo passo, installeremo Shinken da sorgente.
Ci sono alcune attività che devono essere completate prima di iniziare a installare Shinken.
Installa alcuni nuovi pacchetti python e crea un utente Linux con il nome “shinken”:
sudo apt-get install python-setuptools python-pip python-pycurl
useradd -m -s /bin/bash shinkenScarica la sorgente di Shinken dal repository di GitHub:
git clone https://github.com/naparuba/shinken.git
cd shinken/Poi installa Shinken con il comando qui sotto:
git checkout 2.4.3
python setup.py installSuccessivamente, per migliori risultati, dobbiamo installare ‘python-cherrypy3’ dal repository di ubuntu:
sudo apt-get install python-cherrypy3Ora Shinken è installato, successivamente aggiungiamo Shinken per avviarsi all’avvio e avviarlo:
update-rc.d shinken defaults
systemctl start shinkenPasso 2 - Installare Shinken Webui2
Webui2 è l’interfaccia web di Shinken disponibile su shinken.io. Il modo più semplice per installare Sshinken webui2 è utilizzare il comando shinken CLI (che deve essere eseguito come utente shinken).
Accedi come utente shinken:
su - shinkenInizializza il file di configurazione di shinken - Il comando creerà un nuovo file di configurazione .shinken.ini:
shinken --initE installa webui2 con questo comando CLI di shinken:
shinken install webui2Webui2 è installato, ma dobbiamo installare MongoDB e un altro pacchetto python con pip. Esegui il comando qui sotto come root:
sudo apt-get install mongodb
pip install pymongo>=3.0.3 requests arrow bottle==0.12.8Successivamente, vai nella directory di shinken e aggiungi il nuovo modulo webui2 modificando il file ‘broker-master.cfg’:
cd /etc/shinken/brokers/
vim broker-master.cfgAggiungi una nuova opzione all’interno del modulo alla riga 40:
modules webui2Salva il file ed esci dall’editor.
Ora vai nella directory dei contatti e modifica il file ‘admin.cfg’ per la configurazione dell’amministratore.
cd /etc/shinken/contacts/
vim admin.cfgCambia i valori mostrati qui sotto:
contact_name admin # Nome utente 'admin'
password yourpass # Pass 'mypass'Salva ed esci.
Passo 3 - Installare i pacchetti Nagios-plugins e Shinken
In questo passo, installeremo i Nagios-plugins e alcuni moduli Perl. Poi installeremo pacchetti shinken aggiuntivi da shinken.io per eseguire il monitoraggio.
Installa i Nagios-plugins e cpanminus che è richiesto per costruire e installare i moduli Perl:
sudo apt-get install nagios-plugins* cpanminusInstalla questi moduli Perl con il comando cpanm:
cpanm Net::SNMP
cpanm Time::HiRes
cpanm DBIOra crea un nuovo link per il file utils.pm nella directory shinken e crea una nuova directory per Log_File_Health:
chmod u+s /usr/lib/nagios/plugins/check_icmp
ln -s /usr/lib/nagios/plugins/utils.pm /var/lib/shinken/libexec/
mkdir -p /var/log/rhosts/
touch /var/log/rhosts/remote-hosts.logSuccessivamente, installa i pacchetti shinken ssh e linux-snmp per monitorare le fonti SSH e SNMP da shinken.io:
su - shinken
shinken install ssh
shinken install linux-snmpPasso 4 - Aggiungere un Nuovo Host Linux/host-one
Aggiungeremo un nuovo host Linux che sarà monitorato utilizzando un server Ubuntu 16.04 con indirizzo IP 192.168.1.121 e nome host ‘host-one’.
Collegati all’host Linux host-one:
ssh [email protected]Installa i pacchetti snmp e snmpd dal repository di Ubuntu:
sudo apt-get install snmp snmpdSuccessivamente, modifica il file di configurazione ‘snmpd.conf’ con vim:
vim /etc/snmp/snmpd.confCommenta la riga 15 e decommenta la riga 17:
#agentAddress udp:127.0.0.1:161
agentAddress udp:161,udp6:[::1]:161Commenta le righe 51 e 53, quindi aggiungi una nuova configurazione di riga qui sotto:
#rocommunity mypass default -V systemonly
#rocommunity6 mypass default -V systemonly
rocommunity mypassSalva ed esci.
Ora avvia il servizio snmpd con il comando systemctl:
systemctl start snmpdVai al server shinken e definisci il nuovo host creando un nuovo file nella directory ‘hosts’.
cd /etc/shinken/hosts/
vim host-one.cfgIncolla la configurazione qui sotto:
define host{
use generic-host,linux-snmp,ssh
contact_groups admins
host_name host-one
address 192.168.1.121
_SNMPCOMMUNITY mypass # Configurazione SNMP Pass su snmpd.conf
}Salva ed esci.
Modifica la configurazione SNMP sul server Shinken:
vim /etc/shinken/resource.d/snmp.cfgCambia ‘public’ in ‘mypass’ - deve essere la stessa password che hai usato nel file di configurazione snmpd sull’host client host-one.
$SNMPCOMMUNITYREAD$=mypassSalva ed esci.
Ora riavvia entrambi i server - server Shinken e l’host Linux monitorato:
rebootIl nuovo host Linux è stato aggiunto con successo al server Shinken.
Passo 5 - Accedere a Shinken Webui2
Visita Shinken webui2 sulla porta 7677 (sostituisci l’IP nell’URL con il tuo IP):
Accedi con l’utente admin e la tua password (quella che hai impostato nel file di configurazione admin.cfg).

Dashboard di Shinken in Webui2.

I nostri 2 server sono monitorati con Shinken.

Elenco di tutti i servizi monitorati con linux-snmp.

Stato di tutti gli host e servizi.

Passo 6 - Problemi Comuni con Shinken
- Problemi con il server NTP
Quando ricevi questo errore con NTP.
TimeSync - CRITICAL ( NTP CRITICAL: No response from the NTP server)
TimeSync - CRITICAL ( NTP CRITICAL: Offset unknown )Per risolvere questo problema, installa ntp su tutti gli host Linux.
sudo apt-get install ntp ntpdateModifica la configurazione ntp:
vim /etc/ntp.confCommenta tutti i pool e sostituiscili con:
#pool 0.ubuntu.pool.ntp.org iburst
#pool 1.ubuntu.pool.ntp.org iburst
#pool 2.ubuntu.pool.ntp.org iburst
#pool 3.ubuntu.pool.ntp.org iburst
pool 0.id.pool.ntp.org
pool 1.asia.pool.ntp.org
pool 0.asia.pool.ntp.orgSuccessivamente, aggiungi una nuova riga all’interno di restrict:
# Gli utenti locali possono interrogare il server ntp più da vicino.
restrict 127.0.0.1
restrict 192.168.1.120 #indirizzo IP del server shinken
restrict ::1NOTA: 192.168.1.120 è l’indirizzo IP del server Shinken.
Salva ed esci.
Avvia ntp e controlla il dashboard di Shinken:
tnpd- Problema check_netint.pl non trovato
Scarica la sorgente dal repository github nella directory lib di shinken:
cd /var/lib/shinken/libexec/
wget https://raw.githubusercontent.com/Sysnove/shinken-plugins/master/check_netint.pl
chmod +x check_netint.pl
chown shinken:shinken check_netint.pl- Problema con NetworkUsage
C’è un messaggio di errore:
ERROR : Unknown interface eth\d+Controlla la tua interfaccia di rete e modifica il template linux-snmp.
Sul mio server Ubuntu, l’interfaccia di rete è ‘enp0s8’, non eth0, quindi ho ricevuto questo errore.
Modifica i pacchetti del template linux-snmp con vim:
vim /etc/shinken/packs/linux-snmp/templates.cfgAggiungi l’interfaccia di rete alla riga 24:
_NET_IFACES eth\d+|em\d+|enp0s8Salva ed esci.
Riferimenti
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.