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.