Lo strumento Cacti è una soluzione open-source basata sul web per il monitoraggio della rete e la rappresentazione grafica dei sistemi nelle imprese IT. Cacti consente agli utenti di sondare regolarmente i servizi per creare grafici utilizzando RRDtool.
È tipicamente utilizzato per graficare dati in serie temporali per metriche come l’utilizzo della larghezza di banda di rete, il carico della CPU, i processi in esecuzione, lo spazio su disco e altro ancora.
In questa guida, mostreremo come installare e configurare un’applicazione completa di monitoraggio della rete chiamata Cacti utilizzando lo strumento Net-SNMP su distribuzioni basate su RHEL come CentOS Stream, Fedora, Rocky, e Alma Linux, utilizzando gli strumenti di gestione dei pacchetti YUM e DNF.
Pacchetti Richiesti da Cacti
I seguenti pacchetti sono necessari per Cacti sul tuo sistema operativo Linux.
- Apache: Un server Web per visualizzare i grafici di rete creati da PHP e RRDTool.
- MySQL: Un server di database per memorizzare le informazioni di Cacti.
- PHP: Un modulo di script per creare grafici utilizzando RRDTool.
- PHP-SNMP: Un’estensione PHP per SNMP per accedere ai dati.
- NET-SNMP: Un protocollo SNMP (Simple Network Management Protocol) utilizzato per gestire la rete.
- RRDTool: Uno strumento di database per gestire e recuperare dati in serie temporali come il carico della CPU, la larghezza di banda di rete, ecc.
Per scopi dimostrativi, abbiamo utilizzato Rocky Linux 9 per installare lo strumento Cacti, ma le stesse istruzioni funzionano per tutte le distribuzioni basate su RHEL.
Passaggio 1: Installare i pacchetti necessari in Linux
Per cominciare, aggiorna il repository dei pacchetti del sistema per assicurarti di avere le versioni più recenti dei pacchetti software disponibili.
sudo dnf update
Successivamente, installa i pacchetti necessari per Cacti e le sue dipendenze utilizzando il seguente comando.
sudo dnf install net-snmp-utils net-snmp-libs rrdtool php-mysqlnd php-snmp php-xml php-gd mariadb-server httpd

Passaggio 2: Installare lo strumento Cacti in Linux
Per installare Cacti, assicurati che il repository EPEL sia abilitato sul tuo sistema.
sudo yum install epel-release
Una volta abilitato il repository EPEL, puoi installare Cacti eseguendo il seguente comando.
sudo yum install cacti

Passaggio 3: Proteggere il database MariaDB
Per configurare MySQL per Cacti, dobbiamo prima proteggere il server MySQL appena installato e quindi creare il database Cacti con l’utente “Cacti“. Se il tuo MySQL è già installato e protetto, non è necessario ripetere questa operazione.
sudo mysql_secure_installation
Segui le istruzioni per impostare una password di root, rimuovere gli utenti anonimi, impedire l’accesso remoto come root e rimuovere il database di test.

Passaggio 4: Creare il database Cacti
Accedi al server MySQL utilizzando la password appena creata e quindi crea il database Cacti con l’utente “Cacti” impostando una password per esso.
sudo mysql -u root -p CREATE DATABASE cacti; CREATE USER 'cacti'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON cacti.* TO 'cacti'@'localhost'; FLUSH PRIVILEGES; EXIT;

Successivamente, devi importare lo schema predefinito del database Cacti nel database appena creato, ma prima di ciò devi scoprire il percorso del file del database usando il comando rpm e importarlo come indicato.
sudo rpm -ql cacti | grep cacti.sql sudo mysql -u cactiuser -p cacti < /usr/share/doc/cacti/cacti.sql

Passo 5: Configura la connessione al database Cacti
Per configurare la connessione al database Cacti, è necessario aprire il file di configurazione come mostrato.
sudo vi /etc/cacti/db.php
Aggiorna le seguenti righe con le informazioni del tuo database.
$database_type = 'mysql'; $database_default = 'cacti'; $database_hostname = 'localhost'; $database_username = 'cacti'; $database_password = 'your_password';

Passo 6: Configura Apache per Cacti
Apri un file chiamato /etc/httpd/conf.d/cacti.conf con il tuo editor preferito.
sudo vi /etc/httpd/conf.d/cacti.conf
Aggiungi le seguenti righe al file:
Alias /cacti /usr/share/cacti <Directory /usr/share/cacti/> Options +FollowSymLinks AllowOverride None <IfModule mod_authz_core.c> # Apache 2.4 Require all granted </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from all Allow from all </IfModule> </Directory>
Salva e chiudi il file.
Infine, riavvia i servizi Apache e MariaDB per applicare le modifiche.
sudo systemctl restart httpd sudo systemctl restart mariadb
Passo 7: Configura il lavoro Cron di Cacti
Ora apri il file crontab per pianificare gli intervalli di sondaggio per Cacti.
sudo vi /etc/cron.d/cacti
Rimuovi il commento dalla seguente riga. Lo script poller.php viene eseguito ogni 5 minuti per raccogliere dati da host conosciuti, che Cacti usa per creare grafici.
*/5 * * * * cacti /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
Passo 8: Accedi all’interfaccia Web di Cacti
Per accedere all’interfaccia web di Cacti, è necessario aprire la porta 80 sul firewall per consentire il traffico in ingresso su quella porta.
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent sudo firewall-cmd --reload
È ora possibile accedere a Cacti tramite un browser web utilizzando l’indirizzo IP del server o il nome di dominio come indicato.
http://your_server_ip/cacti OR http://domain.com/cacti
Ora, seguire le istruzioni visualizzate sullo schermo per completare il processo di installazione
User: admin Password: admin

Successivamente, cambiare la password predefinita di Cacti.

Accettare l’Accordo di Licenza di Cacti.

Successivamente, lo schermo mostra Controlli Pre-installazione per l’installazione di Cacti, si prega di correggere le impostazioni suggerite nel file /etc/php.ini
come indicato e riavviare Apache dopo aver apportato le modifiche.
memory_limit = 800M max_execution_time = 60 date.timezone = Asia/Kolkata

Allo stesso modo, è necessario concedere l’accesso al database MySQL TimeZone per l’utente Cacti, in modo che il database venga popolato con informazioni globali sul fuso orario.
mysql> use mysql; mysql> GRANT SELECT ON mysql.time_zone_name TO cacti@localhost; mysql> flush privileges;

Si prega di scegliere il Tipo di installazione come “Nuova Installazione“.

Assicurarsi che tutti i permessi delle directory seguenti siano corretti prima di continuare.

Assicurarsi che tutti i valori di queste Posizioni e Versioni Binarie Critiche siano corretti prima di continuare.

Si prega di scegliere il Profilo Origine Dati predefinito da utilizzare per le fonti di polling.

Si prega di scegliere i Modelli Dispositivo che si desidera utilizzare dopo l’installazione di Cacti.

Impostare la Collazione Server nel file di configurazione MySQL /etc/my.cnf sotto la sezione [mysqld] come indicato.
[mysqld] character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci

Il tuo Server Cacti è quasi pronto. Si prega di confermare di essere pronto a procedere.



Congratulazioni! Hai installato con successo Cacti sui sistemi basati su RHEL. Ora puoi iniziare a monitorare la tua infrastruttura di rete aggiungendo dispositivi, creando grafici e impostando allarmi all’interno dell’interfaccia web di Cacti.
Source:
https://www.tecmint.com/install-cacti-network-monitoring-on-rhel-centos-fedora/