Cacti è una soluzione grafica di rete gratuita e open source. Utilizza RRDTool per la raccolta e la rappresentazione grafica dei dati. Fornisce molte funzionalità come raccoglitori di dati remoti e locali, rilevamento della rete, automazione della gestione dei dispositivi, modellazione di grafici, ecc.
In questo tutorial, installeremo Cacti sul server CentOS 7.
Prerequisito
- Server CentOS 7 minimo
- Privilegi di root
Passaggio 1 - Installazione di Apache
Si consiglia di aggiornare il server prima di installare qualsiasi pacchetto in modo che i pacchetti e i repository esistenti vengano aggiornati.
yum -y update
Dopo aver aggiornato il sistema, puoi procedere con l'installazione del server web Apache.
yum -y install httpd
Ora avvia il server Web Apache e abilitalo all'avvio all'avvio utilizzando il seguente comando.
systemctl start httpd
systemctl enable httpd
Fase 2 - Installazione di PHP
Cacti supporta tutte le versioni di PHP superiori alla 5.3. Ma in questo tutorial installeremo PHP 7.1 poiché PHP v5.3 ha raggiunto la fine del ciclo di vita. L'installazione dell'ultima versione di PHP garantirà la massima sicurezza e prestazioni dell'applicazione.
Il repository YUM predefinito di CentOS non include PHP 7.1, quindi dovrai aggiungere il repository Webtatic nel tuo sistema. Il repository Webtatic richiede il repository EPEL per funzionare. Esegui il comando seguente per installare il repository EPEL.
yum -y install epel-release
yum -y update
Digita i comandi per installare il repository Webtatic.
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y update
Digita il seguente comando per installare PHP 7.1 insieme a tutte le dipendenze richieste.
yum -y install php71w php71w-snmp php71w-mysqli php71w-cli php71w-ldap php71w-xml php71w-session php71w-sockets php71w-pcre php71w-gd php71w-dom php71w-posix php71w-mbstring
Per verificare se PHP è stato installato correttamente, puoi eseguire:
php -v
Dovresti ottenere un output simile a questo.
[[email protected] ~]# php -v PHP 7.1.6 (cli) (built: Jun 10 2017 07:28:42) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
Ora dovrai configurare alcune configurazioni in PHP. Apri il file di configurazione PHP, php.ini usando il tuo editor di testo preferito. In questo tutorial useremo nano editor. Se non hai installato nano, puoi eseguire yum -y install nano.
nano /etc/php.ini
Trova la riga seguente e decommenta la riga e imposta il fuso orario in base alla tua regione. Ad esempio:
[Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone date.timezone = Asia/Kolkata
Fase 3 - Installazione di MariaDB
MariaDB è un fork del database MySQL. Per installare MariaDB sul tuo server, esegui:
yum -y install mariadb mariadb-server
Esegui i seguenti comandi per avviare MariaDB e consentirne l'avvio all'avvio.
systemctl start mariadb
systemctl enable mariadb
Ora esegui i seguenti comandi per proteggere l'installazione di MariaDB.
mysql_secure_installation
Il comando precedente eseguirà uno script per proteggere la nuova installazione di MariaDB. Lo script chiederà la password dell'utente root esistente, abbiamo appena installato MariaDB, la password di root non è impostata, basta premere invio per procedere oltre.
Lo script ti chiederà se desideri impostare una password di root per l'installazione di MariaDB, scegli y e imposta una password complessa per l'installazione. La maggior parte delle domande sono autoesplicative e dovresti rispondere sì o y a tutte le domande. L'output apparirà come mostrato di seguito.
Per creare un database dovremo prima accedere alla riga di comando di MySQL. Esegui il seguente comando per lo stesso.
mysql -u root -p
Il comando precedente accederà alla shell MySQL dell'utente root, richiederà la password dell'utente root. Fornisci la password per accedere. Ora esegui la seguente query per creare un nuovo database per la tua installazione di Cacti.
CREATE DATABASE cacti_data;
La query precedente creerà un nuovo database chiamato cacti_data. Puoi usare qualsiasi altro nome per il tuo database, se lo desideri. Assicurati di utilizzare il punto e virgola alla fine di ogni query poiché la query termina sempre con un punto e virgola.
Una volta creato il database, puoi creare un nuovo utente e concedere tutte le autorizzazioni all'utente per il database. Per creare un nuovo utente del database, esegui la seguente query.
CREATE USER 'cacti_user'@'localhost' IDENTIFIED BY 'StrongPassword';
La query precedente creerà un utente con nome utente cacti_user. Puoi usare qualsiasi nome utente che preferisci invece di cacti_user. Sostituisci StrongPassword con una password molto forte. Ora fornisci tutti i privilegi all'utente del tuo database sul database che hai creato. Esegui il comando seguente.
GRANT ALL PRIVILEGES ON cacti_data.* TO 'cacti_user'@'localhost';
Ora esegui il comando seguente per applicare immediatamente le modifiche ai privilegi del database.
FLUSH PRIVILEGES;
Esci dal prompt di MySQL usando il seguente comando.
EXIT;
Dovrai anche compilare la tabella dei fusi orari. Esegui il comando seguente per popolare le tabelle dei fusi orari.
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
Fornisci la password di root MySQL per procedere. Una volta che le tabelle sono state popolate, dovrai fornire l'accesso selezionato all'account utente Cacti sulle tabelle. Accedi di nuovo al prompt di MySQL utilizzando:
mysql -u root -p
Ora esegui la seguente query.
GRANT SELECT ON mysql.time_zone_name TO 'cacti_user'@'localhost';
FLUSH PRIVILEGES;
La query sopra SELECT darà accesso a cacti_user su
Fase 4 - Installazione e configurazione di Cacti
Cacti richiede alcune dipendenze in più, esegui il seguente comando per installarle.
yum -y install net-snmp rrdtool net-snmp-utils
Poiché abbiamo tutte le dipendenze pronte, ora possiamo scaricare il pacchetto di installazione dal sito Web Cacti.
cd /var/www/html
wget http://www.cacti.net/downloads/cacti-1.1.10.tar.gz
Puoi sempre trovare il link all'ultima versione dell'applicazione nella pagina di download di Cacti. Estrarre l'archivio utilizzando il seguente comando.
tar xzvf cacti*.tar.gz
Rinomina la tua cartella Cacti usando:
mv cacti-1*/ cacti/
Ora importa il database Cacti eseguendo il comando seguente.
cd /var/www/html/cacti
mysql cacti_data < cacti.sql -u root -p
Il comando precedente importerà il database cacti.sql in cacti_data utilizzando l'utente root. Ti chiederà anche la password dell'utente root prima di importare il database.
Ora modifica la configurazione di Cacti eseguendo il comando seguente.
nano /var/www/html/cacti/include/config.php
Ora trova le seguenti righe e modificale in base alle credenziali del tuo database MySQL.
/* make sure these values reflect your actual database/host/user/password */ $database_type = 'mysql'; $database_default = 'cacti_data'; $database_hostname = 'localhost'; $database_username = 'cacti_user'; $database_password = 'StrongPassword'; $database_port = '3306'; $database_ssl = false;
Passaggio 5:configurazione delle autorizzazioni e del firewall
Ora dovrai fornire la proprietà dell'applicazione all'utente del server web utilizzando il comando seguente.
chown -R apache:apache /var/www/html/cacti
Potrebbe anche essere necessario consentire il traffico HTTP sulla porta 80 attraverso il firewall se ne stai eseguendo uno. Esegui i seguenti comandi per lo stesso.
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload
Ora dovrai disabilitare il tuo SELinux perché la configurazione del proxy non funziona con le politiche di SELinux. Per disabilitare temporaneamente SELinux senza riavviare il server, eseguire il comando seguente.
setenforce 0
Per disabilitare completamente SELinux dovrai modificare il file /etc/selinux/config.
nano /etc/selinux/config
Trova la riga seguente:
SELINUX=enforcing
Cambialo in:
SELINUX=disabled
Ora completa l'installazione utilizzando un browser web, vai al seguente link utilizzando il tuo browser web preferito.
http://Your_Server_IP/cacti
Vedrai la seguente pagina.
Accetta il contratto di licenza per procedere ulteriormente.
Nella prossima interfaccia vedrai la preinstallazione, tutte le dipendenze richieste sono soddisfatte.
Procedi all'interfaccia successiva.
Nel tipo di installazione, scegli Nuovo server primario e vai avanti.
Nella prossima interfaccia, dovrai fornire le posizioni dei binari. Il percorso per RRDTool e i binari PHP sono corretti. Per tutti gli altri binari, fornisci il percorso /usr/bin/nome_binario. Ad esempio, per snapwalk binary, il percorso è /usr/bin/snmpwalk.
Nella prossima interfaccia, vedrai che il server ha accesso in scrittura a tutte le cartelle richieste.
Nella configurazione del modello, scegli Macchina Linux locale e fai clic su Fine.
Verrai indirizzato alla pagina di accesso. Accedi utilizzando username admin e password admin, verrai indirizzato alla dashboard.
L'installazione di Cacti è ora terminata, puoi utilizzare l'applicazione per monitorare il tuo server utilizzando grafici interattivi.