Installazione E Configurazione Di LibreNMS Su CentOS 8.2.2004 con Web Server Apache

by | Set 18, 2020

LibreNMS è un software open source autodiscovering di monitoraggio di rete basato su PHP / MySQL / SNMP che include il supporto per un’ampia gamma di hardware e sistemi operativi di rete tra cui Cisco, Linux, FreeBSD, Juniper, Brocade, Foundry, HP e molti altri.

CARATTERISTICHE DI LIBRENMS

Automatic discovery: scopri automaticamente l’intera rete utilizzando CDP, FDP, LLDP, OSPF, BGP, SNMP e ARP.
Avvisi personalizzabili: sistema di avviso altamente flessibile, notifica via e-mail, irc, allentamento e altro ancora.
Accesso API: un’API completa per gestire, rappresentare graficamente e recuperare i dati dall’installazione.
Sistema di fatturazione: genera fatture di larghezza di banda per le porte sulla rete in base all’utilizzo o al trasferimento.
Aggiornamenti automatici: rimani aggiornato automaticamente con correzioni di bug, nuove funzionalità e altro ancora.
Polling distribuito: ridimensionamento orizzontale per crescere con la rete.
App per iPhone: è disponibile l’app nativa per iPhone che fornisce funzionalità di base.
App Android: è disponibile l’app nativa per Android che fornisce funzionalità di base.

METODI DI AUTENTICAZIONE

MySQL
HTTP
LDAP
Active Directory

In questo tutorial, ti mostrerò come installare e configurare LibreNMS su un server CentOS 8.2.2004 con Apache come server web e MariaDB come database.

PRE-REQUISITI

Un server CentOS 8.2.2004 con un utente non root con privilegi sudo

INSTALLAZIONE PACCHETTI

Iniziamo con l’installazione delle dipendenze richieste dall’applicazione. Aggiungere il repository EPEL a RHEL / CentOS 8 con i comandi elencati di seguito:

INSTALLAZIONE DI PHP E APACHE

Per installare il PHP e Apache eseguire il comando:

Avviamo i servizi di Apache e del PHP con il comando:

Se è tutto corretto dovremmo vedere una schermata come mostrato nell’immagine sovrastante.

Adesso verifichiamo che i servizi siano su con il comando:

Se è tutto corretto dovremmo vedere una schermata come mostrato nell’immagine sovrastante.

Verifichiamo quindi la versione di PHP installata con il comando:

Al momento della stesura di questa guida la versione PHP installata è la 7.2.24 come si può vedere nell’immagine sovrastante.

Procediamo come la configurazione del gtimezone nel file php.ini con il comando:

Individuare il parametro date.timezone e inserire il valore Europe/Rome

Salvare e chiudere il file php.ini

CONFIGURAZIONE DEL FIREWALL

Io per comodità, visto che il server sarà raggiungibile solo da rete interna, ho disattivato il firewall.

Nel caso vogliate utilizzare il firewall bisogna ricordare di attivare i server http e https con i seguenti comandi:

INSTALLAZIONE DEL DATABASE SERVER (MARIADB)

Procedere all’installazione di MariaDB usando i seguenti comandi:

Prima di tutto facciamo un update del sistema con il comando:

Installare MariaDB con il comando:

Verificare la versione di MariaDB installata con il comando:

Al momento della stesura di questa guida la versione di MariaDb installata è la 10.3.17 come si può vedere nell’immagine sovrastante.

Attivare il servizio di MariaDB con il comando:

Procedere con la mesa in sicurezza di MariaDB con il comando:

Premere INVIO

Premere Y per inserire la password di root

Inserire la password due volte

Premere Y per rimuovere gli utenti anonimi

Premere Y per non permettere il login di root da remoto

Premere Y per rimuovere i database di test

Premere Y per fare un reload dei privilegi delle tabelle

Se abbiamo fatto tutto correttamante dovremmo vedere un messaggio come nell’immagine sovrastante

Fare un test di accesso al database per verificare che sia tutto ok con il comando:

Inserire la password di root configurata in precedenza

Se è tutto OK dovremmo vedere un messaggio come nell’immagine sovrastante

CONFIGURAZIONE DEL DATABASE SERVER (MARIADB)

Procedere alla configurazione del database server accedendo con l’utente root con il comando:

Inserire la password dell’utente root

Eseguire i comandi in sequenza:

NOTA BENE: al posto di PasswordUtente inserire la password dell’utente librenms che utilizzeremo successivamente

Se abbiamo fatto tutto correttamante dovremmo vedere una schermata come nell’immagine sovrastante

Editare il file my.cnf con il comando:

Nella sezione [mysqld] aggiungiere le seguenti righe:

Se è tutto corretto dovremmo vedere una schermata come nell’immagine sovrastante

Salvare e chiudere il file di configurazione

Abilitare MariaDB con il comando:

Quindi riavviare il servizio con il comando:

verificare che MariaDb sia in esecuzione con il comando:

Se è tutto corretto dovremmo vedere una schermata come nell’immagine sovrastante

INSTALLAZIONE E CONFIGURAZIONE DI GIT

Innanzitutto, utilizzare gli strumenti di gestione dei pacchetti DNF per aggiornare l’indice del pacchetto locale eseguendo il comando:

Procedere all’installazione di GIT con il comando:

Per verificare la versione di GIT installata esesguire il comando

Al momento della stesura di questa guida la versione di GIT installata è la 2.18.4 come si può vedere nell’immagine sovsratante

INSTALLAZIONE E CONFIGURAZIONE DI LIBRENMS

Prima di tutto aggiungiamo l’utente librenms con il comando:

Quindi per apache eseguiamo il comando:

Clonare LibreNMS da GitHub con i seguenti comandi:

Se è andato tutto a buon fine dovremmo vedere una schermata come nell’immagine sovrastante

Installare quindi le dipendenze del PHP con il comando:

Se è andato tutto a buon fine al fondo degli script dovremmo leggere Application key set successfully

INSTALLAZIONE CONFIGURAZIONE DEL DEMONE SNMPD

Prima di tutto procedere con l’installazione dell’SNMP e delle relative utility con il comando:

Copiare e configurare l’SNMP con i seguenti comandi:

Inserire la stringa della nostra community al posto di RANDOMSTRINGGOESHERE

Salvare e chiudere il file di configurazione

Scaricare lo script di identificazione della versione della distribuzione con i seguenti comandi:

Avviare ed abilitare il demone SNMPD con i seguenti comandi:

Quindi verificare lo stato del servizi con il comando:

Se il servizio è attivo dovremmo vedere una schermata come nell’immagine sovrastante

ABILITAZIONE DEL COMPLETAMENTO DEL COMANDO INMS

Questa caratteristica ti dà l’opportunità di usare tab per il completamento sui comandi lnms come faresti per i normali comandi linux.

Per attivare questa funzionalità eseguire i due comandi di seguito riportati:

CONFIGURAZIONE DEL PHP-PFM

Per configurare il PHP-PFM eseguire i comandi elencati di seguito:

All’interno del file eseguire le modifiche seguenti:

Al posto di [/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_column_text][www][/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_column_text] inserire [librenms]

Al posto di user = apache inserire user = librenms

Al posto di group = apache inserire group = librenms

Al parametro listen inserire listen = /run/php-fpm-librenms.sock

CONFIGURAZIONE DI APACHE

Creare un nuovo file di configurazione di Apache con il comando:

All’interno del file incollare le segueti righe di codice:

NOTA BENE: al posto di librenms.server.com inserire il nome DNS del nostro server

Salvare e chiudere il file di configurazione

Riavviare i servizi con i seguenti comandi:

CONFIGURAZIONE DELLA POLICY SELINUX

Per consentire ad Apache di servire i file nella cartella /opt/librenms/html/ eseguire i comandi elencati di seguito:

quindi eseguire:

ATTENZIONE: Potrebbe capitare che molti comandi restituiscono il messaggio Already defined, non preoccuparsi ed andare avanti nell’esecuzione dei comandi

INSTALLAZIONE E CONFIGURAZIONE DI FPING

Procedere all’installazione di fping con il comando:

Posizionarsi nella cartella /etc con il comando

Creare il file http_fping.tt con il seguente comando:

Inserire quindi le seguenti righe di codice

Salvare e chiudere il file

Eseguire i comandi elencati di seguito:

Riavviare il servizio httpd con il comando:

INSTALLAZIONE DELL’UTILITY RRDTOOL

Per installare l’utility RRDTool eseguire il comando:

CONFIGURAZIONE DEL CRON JOBS E DEL LOGROTATE

Eseguire il comando:

LibreNMS conserva i log nella directory /opt/librenms/logs.
Nel tempo questi log possono crescere e diventare grandi e quindi è il caso di ruotarli.

Per ruotare i vecchi log è possibile utilizzare il file di configurazione logrotate fornito con il comando:

Quindi settare le ACL con i seguenti comandi:

INSTALLAZIONE WEB DI LIBRENMS

Aprire un qualsiasi browser e richiamare il nome del server censito in fase di configurazione

http://nome-del-server-librenms/install

Nella fase Pre-Install Checks dovremmo vedere tutto verde come nell’immagine sovrastante

Cliccare sull’icona del database quindi inserire tutti i parametri richiesti

Al termine cliccare su Check Credentials

Cliccare su Build Database

Dopo qualche secondo se è andato tutto a buon fine dovremmo vedere una schermata come quella sovrastante

Cliccare sull’icona con la chiave

Inserire le credenziali amministrative di accesso alla pagina web quindi cliccare su Add User

Se è andato tutto a buon fine dovremmo vedere una schermata come quella sovrastante

Cliccare sull’ultima icona per scrivere le modifiche all’interno dei file config.php e del file .env

ATTENZIONE: Come nel mio caso se non riesce a scrivere le modifiche nessun problema, basta editare il file da console SSH

Per modificare il file .env eseguire il comando:

Dovremmo vedere un contenuto del file simile a quello mostrato nell’immagine sovrastante

A questo punto non ci resta che copiare le righe di codice che vediamo nella pagina web all’interno del file .env

Salvare e chiudere il file di configurazione

Se proviamo a cliccare di nuovo sull’ultima icona nella pagina web dovrebbe partire un redirect che ci porta sulla pagina di login del notro LibreNMS.

Inserire le credenziali create in precedenza quindi cliccare su Login

A questo punto non ci resta che censire i nostri apparati ed iniziare a monitorarli.

Scritto da Raffaele Chiatto

Sono Raffaele Chiatto, un appassionato di informatica a 360 gradi.
Tutto è iniziato nel 1996, quando ho scoperto il mondo dell'informatica grazie a Windows 95, e da quel momento non ho più smesso di esplorare e imparare.
Ogni giorno mi dedico con curiosità e passione a scoprire le nuove frontiere di questo settore in continua evoluzione.

Articoli Recenti

Veeam Backup

Monitoring

Friends

  • My English Lab  English School
  • ChrSystem   Infrastrutture IT
  • ACT For Cange  Mental Coach
  • Since 01  Kreative Graphics

Database

Networking

Autori

  • Raffaele Chiatto  Amministratore
  • Marco Valle  Autore Collaboratore

Related Post

0 Comments

Submit a Comment

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Virtualizzazione

Linux

Microsoft

Apple

Backup

Database

Security

Automazione