Observium è uno strumento gratuito e open source per la gestione e il monitoraggio della rete che può essere utilizzato per monitorare tutti i dispositivi di rete. È scritto in PHP e utilizza SNMP per raccogliere i dati dal dispositivo connesso e monitorarli utilizzando un'interfaccia web. Observium supporta molti hardware di rete e sistemi operativi tra cui Linux, Windows, FreeBSD, Cisco, Dell, NetApp e molti altri. Observium fornisce un'interfaccia potente, semplice e facile da usare per monitorare lo stato e lo stato della tua rete.
In questo tutorial, spiegheremo come installare e configurare Observium sul server Debian 9.
Requisiti
- Un nuovo server Debian 9 installato sul tuo sistema.
- Una password di root è impostata sul tuo server.
Per iniziare
Iniziamo aggiornando il tuo sistema all'ultima versione stabile eseguendo il seguente comando:
apt-get update -y
apt-get upgrade -y
Una volta aggiornato il sistema, riavvia il sistema per applicare tutti gli aggiornamenti:
reboot
Dopo il riavvio, accedi con l'utente root e installa alcuni pacchetti richiesti sul tuo sistema eseguendo il seguente comando:
apt-get install snmp fping python-mysqldb rrdtool subversion whois mtr-tiny ipmitool graphviz imagemagick -y
Una volta installati tutti i pacchetti richiesti, puoi procedere al passaggio successivo.
Installa il server LAMP
Observium gira su Apache, scritto in linguaggio PHP e usa MySQL come database. Quindi dovrai installare il server LAMP sul tuo sistema.
Innanzitutto, installa il server Web Apache eseguendo il seguente comando:
apt-get install apache2 libapache2-mod-php7.0 -y
Dopo aver installato Apache, avvia il servizio Apache e abilitalo all'avvio all'avvio con il seguente comando:
systemctl start apache2
systemctl enable apache2
Quindi, installa PHP7 e altre librerie richieste eseguendo il comando seguente:
apt-get install php7.0 php7.0-cli php7.0-mysql php7.0-mysqli php7.0-gd php7.0-mcrypt php7.0-json php-pear -y
Una volta installati PHP7 e tutte le librerie richieste, eseguire il seguente comando per installare il server MariaDB:
apt-get install mariadb-server -y
Quindi, avvia il servizio MariaDB e abilitalo all'avvio all'avvio con il seguente comando:
systemctl start mysql
systemctl enable mysql
Configura MariaDB
Per impostazione predefinita, MariaDB non è protetta. Puoi proteggerlo con il seguente comando:
mysql_secure_installation
Rispondi a tutte le domande come segue:
set root password? [Y/n] n
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
Una volta che MariaDB è protetto, dovrai creare un database e un utente per Observium.
Innanzitutto, accedi alla shell MySQL con il seguente comando:
mysql -u root -p
Inserisci la tua password di root, quindi crea un database per Observium con il seguente comando:
MariaDB [(none)]>CREATE DATABASE observiumdb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Quindi, crea un utente per Observium e concedi tutti i privilegi al database di Observium con il seguente comando:
MariaDB [(none)]>GRANT ALL PRIVILEGES ON observiumdb.* TO 'observium'@'localhost' IDENTIFIED BY 'password';
Quindi, svuota i privilegi con il seguente comando:
MariaDB [(none)]>FLUSH PRIVILEGES;
Infine, esci dalla shell MySQL con il seguente comando:
MariaDB [(none)]>\q
Scarica e installa Observium
Observium è disponibile in due edizioni Open Source Edition e Subscription Edition, Open Source Edition è disponibile gratuitamente per il download con meno funzionalità e poche correzioni di sicurezza, mentre Subscription Edition viene fornito con funzionalità aggiuntive e supporto hardware. Puoi scaricare la versione Open Source dell'Observium dal loro sito Web ufficiale con il seguente comando:
wget http://www.observium.org/observium-community-latest.tar.gz
Dopo il download, estrai l'archivio scaricato con il seguente comando:
tar -xvzf observium-community-latest.tar.gz
Quindi, copia la directory estratta nella directory principale web di Apache:
cp -ar observium /var/www/html/
Quindi, rinomina il file di configurazione di esempio e apporta alcune modifiche:
cd /var/www/html/observium
cp config.php.default config.php
nano config.php
Modifica il file come mostrato di seguito:
// Database config --- This MUST be configured
$config['db_extension'] = 'mysqli';
$config['db_host'] = 'localhost';
$config['db_user'] = 'observium';
$config['db_pass'] = 'password';
$config['db_name'] = 'observiumdb';
Salva il file, quindi imposta lo schema predefinito per il database MySQL con il seguente comando:
./discovery.php -u
Se tutto va bene dovresti vedere il seguente output:
___ _ _
/ _ \ | |__ ___ ___ _ __ __ __(_) _ _ _ __ ___
| | | || '_ \ / __| / _ \| '__|\ \ / /| || | | || '_ ` _ \
| |_| || |_) |\__ \| __/| | \ V / | || |_| || | | | | |
\___/ |_.__/ |___/ \___||_| \_/ |_| \__,_||_| |_| |_|
Observium Community Edition 17.9.0
http://www.observium.org
Install initial database schema ... done.
-- Updating database/file schema
310 -> 311 # (db) . Done (0s).
311 -> 312 # (db) .... Done (0s).
312 -> 313 # (db) Done (0s).
313 -> 314 # (db) Done (0s).
314 -> 315 # (php) . Done (0s).
315 -> 316 # (db) . Done (0s).
316 -> 317 # (db) .. Done (0s).
317 -> 318 # (db) . Done (0s).
318 -> 319 # (db) ....... Done (2s).
319 -> 320 # (db) . Done (0s).
320 -> 321 # (db) . Done (0s).
321 -> 322 # (db) . Done (0s).
322 -> 323 # (db) ... Done (1s).
323 -> 324 # (db) ... Done (0s).
324 -> 325 # (db) .... Done (1s).
325 -> 326 # (db) . Done (0s).
326 -> 327 # (db) . Done (0s).
327 -> 328 # (db) . Done (0s).
328 -> 329 # (db) . Done (0s).
329 -> 330 # (db) . Done (0s).
330 -> 331 # (db) . Done (0s).
331 -> 332 # (db) ... Done (1s).
332 -> 333 # (php) Done (0s).
333 -> 334 # (db) . Done (0s).
334 -> 335 # (php) Done (0s).
335 -> 336 # (db) . Done (0s).
336 -> 337 # (db) . Done (1s).
337 -> 338 # (db) . Done (0s).
338 -> 339 # (db) ... Done (0s).
339 -> 340 # (db) ... Done (0s).
340 -> 341 # (db) ........ Done (1s).
341 -> 342 # (db) ............... Done (0s).
342 -> 343 # (db) ... Done (0s).
343 -> 344 # (db) .... Done (1s).
344 -> 345 # (db) .. Done (0s).
345 -> 346 # (db) . Done (0s).
346 -> 347 # (db) . Done (0s).
347 -> 348 # (db) F Done (0s, 1 errors).
348 -> 349 # (db) .. Done (0s).
349 -> 350 # (php) Done (0s).
350 -> 351 # (db) ..... Done (1s).
351 -> 352 # (db) .. Done (0s).
-- Done.
Successivamente, dovrai creare una directory in cui archiviare RRD e registri:
mkdir rrd logs
Modifica la proprietà della directory observium con il seguente comando:
chown -R www-data:www-data /var/www/html/observium
Successivamente, dovrai creare un file host virtuale Apache per Observium. Per farlo, crea un nuovo file di configurazione observium.conf:
nano /etc/apache2/sites-available/observium.conf
Aggiungi le seguenti righe:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName example.com
DocumentRoot /var/www/html/observium/html
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/html/observium/html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
</VirtualHost>
Salvare il file, quindi abilitare il file host virtuale observium e disabilitare il file host virtuale predefinito con il comando seguente:
a2ensite observium
a2dissite 000-default
Successivamente, dovrai anche abilitare il modulo di riscrittura Apache e il modulo PHP mcrypt. Puoi farlo eseguendo il seguente comando:
a2enmod rewrite
phpenmod mcrypt
Infine, riavvia il server Web Apache con il seguente comando:
systemctl restart apache2
Quindi, crea il tuo primo utente amministratore con il seguente comando:
/var/www/html/observium/adduser.php admin yourpassword 10
Se tutto è andato bene, dovresti vedere il seguente output:
Observium CE 0.17.7.8697
Add User
User admin added successfully.
Accesso all'interfaccia Web di Observium
Prima di accedere a Observium, dovrai abilitare la porta 80 attraverso il firewall UFW. Per impostazione predefinita, UFW non è installato su Debian 9, quindi dovrai prima installarlo.
apt-get install ufw -y
Una volta installato UFW, abilita UFW con il seguente comando:
ufw enable
Quindi, consenti la porta 80 tramite il firewall UFW con il seguente comando:
ufw allow 80
Una volta configurato il firewall, apri il tuo browser web e digita l'URL http://example.com, dovresti vedere la seguente pagina:

Qui, inserisci il nome utente e la password dell'amministratore, quindi fai clic sul pulsante Accedi dovresti vedere la dashboard predefinita di Observium come di seguito:

Successivamente, dovrai creare un cron job per il polling e il rilevamento dei dispositivi dalla rete. Puoi farlo creando un file cron all'interno della directory /etc/cron.d:
nano /etc/cron.d/observium
Aggiungi le seguenti righe:
# Run a complete discovery of all devices once every 2 hours 25 */2 * * * root /var/www/html/observium/discovery.php -h all >> /dev/null 2>&1 # Run automated discovery of newly added devices every 10 minutes */10 * * * * root /var/www/html/observium/discovery.php -h new >> /dev/null 2>&1 # Run multithreaded poller wrapper every 10 minutes */10 * * * * root /var/www/html/observium/poller-wrapper.py 4 >> /dev/null 2>&1 # Run housekeeping script daily for syslog, eventlog and alert log 10 2 * * * root /var/www/html/observium/housekeeping.php -ysel >> /dev/null 2>&1 # Run housekeeping script daily for rrds, ports, orphaned entries in the database and performance data 10 1 * * * root /var/www/html/observium/housekeeping.php -yrptb >> /dev/null 2>&1
Salva e chiudi il file al termine, quindi riavvia il servizio cron per applicare queste modifiche:
systemctl restart cron
Conclusione
Congratulazioni! hai installato correttamente Observium sul server Debian 9. Ora puoi ottenere facilmente lo stato e lo stato della tua rete. Puoi controllare la pagina della documentazione ufficiale di Observium per ulteriori informazioni sulla configurazione di dispositivi, avvisi e moduli di autenticazione.