Comment installer l’outil de surveillance du réseau Cacti sur Ubuntu 20.04

Cacti est un outil de surveillance de réseau gratuit, open-source et basé sur le Web, écrit en PHP. Il s’agit d’une application frontale pour le RRDtool. Il utilise le protocole SNMP pour surveiller l’utilisation de la bande passante et le trafic réseau d’un routeur ou d’un commutateur. Il affiche la charge du processeur et l’utilisation de la bande passante du réseau sous forme de graphique et les alimente en données dans une base de données MySQL.

Dans ce tutoriel, nous allons te montrer comment installer l’outil de surveillance Cacti sur le serveur Ubuntu 20.04.

Conditions préalables

  • Un serveur exécutant Ubuntu 20.04.
  • Un mot de passe root est configuré sur le serveur.

Démarrage

Avant de commencer, c’est une bonne idée de mettre à jour tous les paquets système à la dernière version. Tu peux les mettre à jour avec la commande suivante :

apt-get update -y

Une fois que tous les paquets sont mis à jour, installe les autres dépendances requises en exécutant la commande suivante :

apt-get install snmp php-snmp rrdtool librrds-perl unzip curl git gnupg2 -y

Une fois que toutes les dépendances sont installées, tu peux passer à l’étape suivante.

Installe le serveur LAMP

Ensuite, tu devras installer le serveur Web Apache, MariaDB, PHP et les autres extensions PHP requises sur ton serveur. Tu peux tous les installer en exécutant la commande suivante :

apt-get install apache2 mariadb-server php php-mysql libapache2-mod-php php-xml php-ldap php-mbstring php-gd php-gmp -y

Après avoir installé tous les paquets, édite le fichier php.ini et apporte quelques modifications :

nano /etc/php/7.4/apache2/php.ini

Change les lignes suivantes :

memory_limit = 512M
max_execution_time = 60
date.timezone = Asia/Kolkata

Sauvegarde et ferme le fichier puis édite un autre fichier php.ini et apporte quelques modifications :

nano /etc/php/7.4/cli/php.ini

Change les lignes suivantes :

memory_limit = 512M
max_execution_time = 60
date.timezone = Asia/Kolkata

Sauvegarde et ferme le fichier lorsque tu as terminé. Ensuite, redémarre le service Apache pour appliquer les modifications :

systemctl restart apache2

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Configurer le serveur MariaDB

Cacti utilise MariaDB comme backend de base de données. Tu devras donc créer une base de données et un utilisateur pour Cacti.

Tout d’abord, édite le fichier de configuration par défaut de MariaDB et modifie certains paramètres :

nano /etc/mysql/mariadb.conf.d/50-server.cnf

Ajoute / Modifie les lignes suivantes dans la section [mysqld] :

collation-server = utf8mb4_unicode_ci
max_heap_table_size = 128M
tmp_table_size = 64M
join_buffer_size = 64M
innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_buffer_pool_size = 512M
innodb_flush_log_at_timeout = 3
innodb_read_io_threads = 32
innodb_write_io_threads = 16
innodb_io_capacity = 5000
innodb_io_capacity_max = 10000

Enregistre et ferme le fichier puis redémarre le service MariaDB pour appliquer les modifications :

systemctl restart mariadb

Ensuite, connecte-toi au shell MariaDB avec la commande suivante :

mysql

Une fois connecté, crée une base de données et un utilisateur pour Cacti avec la commande suivante :

MariaDB [(none)]> create database cactidb;
MariaDB [(none)]> GRANT ALL ON cactidb.* TO [email protected] IDENTIFIED BY 'password';

Ensuite, vide les privilèges et quitte le shell MariaDB avec la commande suivante :

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Ensuite, tu devras importer les données du fuseau horaire dans la base de données MySQL. Tu peux les importer avec la commande suivante :

mysql mysql < /usr/share/mysql/mysql_test_data_timezone.sql

Ensuite, connecte-toi au shell MariaDB et accorde les privilèges nécessaires sur le fuseau horaire MySQL avec la commande suivante :

mysql
MariaDB [(none)]> GRANT SELECT ON mysql.time_zone_name TO [email protected];

Ensuite, annule les privilèges et quitte le shell MariaDB avec la commande suivante :

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Installe et configure Cacti

Tout d’abord, tu dois télécharger la dernière version de Cacti depuis son site officiel. Tu peux le télécharger avec la commande suivante :

wget https://www.cacti.net/downloads/cacti-latest.tar.gz

Une fois le téléchargement terminé, extrais le fichier téléchargé avec la commande suivante :

tar -zxvf cacti-latest.tar.gz

Ensuite, déplace le répertoire extrait vers le répertoire racine d’Apache avec la commande suivante :

mv cacti-1* /var/www/html/cacti

Ensuite, importe la base de données dans cactidb avec la commande suivante :

mysql cactidb < /var/www/html/cacti/cacti.sql

Ensuite, modifie le fichier Cacti config.php et définis tes paramètres de base de données :

nano /var/www/html/cacti/include/config.php

Change les lignes suivantes :

$database_type     = 'mysql';
$database_default  = 'cactidb';
$database_hostname = 'localhost';
$database_username = 'cactiuser';
$database_password = 'password';
$database_port     = '3306';

Sauvegarde et ferme le fichier puis crée un fichier journal pour Cacti.

touch /var/www/html/cacti/log/cacti.log

Ensuite, définis la propriété et la permission du répertoire cacti avec la commande suivante :

chown -R www-data:www-data /var/www/html/cacti/
chmod -R 775 /var/www/html/cacti/

Ensuite, crée un nouveau fichier de tâche cron Cacti avec la commande suivante :

nano /etc/cron.d/cacti

Ajoute la ligne suivante :

*/5 * * * * www-data php /var/www/html/cacti/poller.php > /dev/null 2>&1

Sauvegarde et ferme le fichier lorsque tu as terminé.

À ce stade, Cacti est installé et configuré. Tu peux maintenant passer à l’étape suivante.

Configurer Apache pour Cacti

Ensuite, tu devras créer un fichier de configuration d’hôte virtuel Apache pour Cacti. Tu peux le créer avec la commande suivante :

nano /etc/apache2/sites-available/cacti.conf

Ajoute les lignes suivantes :

Alias /cacti /var/www/html/cacti

  <Directory /var/www/html/cacti>
      Options +FollowSymLinks
      AllowOverride None
      <IfVersion >= 2.3>
      Require all granted
      </IfVersion>
      <IfVersion < 2.3>
      Order Allow,Deny
      Allow from all
      </IfVersion>

   AddType application/x-httpd-php .php

<IfModule mod_php.c>
      php_flag magic_quotes_gpc Off
      php_flag short_open_tag On
      php_flag register_globals Off
      php_flag register_argc_argv On
      php_flag track_vars On
      # this setting is necessary for some locales
      php_value mbstring.func_overload 0
      php_value include_path .
 </IfModule>

  DirectoryIndex index.php
</Directory>

Enregistre et ferme le fichier puis active le fichier d’hôte virtuel avec la commande suivante :

a2ensite cacti

Ensuite, redémarre le service Apache pour appliquer les changements de configuration :

systemctl restart apache2

Tu peux aussi vérifier l’état du service Apache avec la commande suivante :

systemctl status apache2

Tu devrais obtenir la sortie suivante :

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-12-02 03:11:25 UTC; 9s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 15445 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 15459 (apache2)
      Tasks: 6 (limit: 4691)
     Memory: 13.2M
     CGroup: /system.slice/apache2.service
             ??15459 /usr/sbin/apache2 -k start
             ??15460 /usr/sbin/apache2 -k start
             ??15461 /usr/sbin/apache2 -k start
             ??15462 /usr/sbin/apache2 -k start
             ??15463 /usr/sbin/apache2 -k start
             ??15464 /usr/sbin/apache2 -k start

Dec 02 03:11:25 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Accède à l’interface Web de Cacti

Maintenant, ouvre ton navigateur Web et accède à l’interface Web Cacti en utilisant l’URL http://your-server-ip/cacti. Tu seras redirigé vers la page de connexion de Cacti :

Connexion Cacti

Indique le nom d’utilisateur et le mot de passe par défaut d’admin et clique sur le bouton Connexion. Tu devrais voir l’écran de réinitialisation du mot de passe :

Change le mot de passe de Cacti

Change ton mot de passe par défaut et clique sur le bouton Enregistrer. Tu devrais voir la page Contrat de licence :

Accept license

Accepte l’accord et clique sur le bouton Commencer. Tu devrais voir l’écran de vérification de la pré-installation :

Vérifications avant l'installation

Clique sur le bouton Suivant. Tu devrais voir l’écran Type d’installation :

Type d'installation

Sélectionne le type d’installation que tu souhaites et clique sur le bouton Suivant. Tu devrais voir l’écran de vérification des autorisations du répertoire :

Permissions du répertoire

Clique sur le bouton Suivant. Tu devrais voir l’écran de vérification des emplacements et versions binaires :

Emplacements binaires

Clique sur le bouton Suivant. Tu devrais voir l’écran suivant :

Whitelists

Coche la case « J’ai lu cette déclaration » et clique sur le bouton Suivant. Tu devrais voir l’écran suivant :

Réseau d'automatisation

Sélectionne les options que tu souhaites et clique sur le bouton Suivant. Tu devrais voir l’écran de configuration du modèle :

Configuration du modèle

Clique sur le bouton Suivant. Tu devrais voir l’écran suivant :

Configuration de la base de données

Clique sur le bouton Suivant. Tu devrais voir l’écran Confirmer l’installation :

Conf confirmer l installation

Coche la case« Confirmer l’installation » et clique sur le bouton Installer. Une fois l’installation terminée, tu devrais voir l’écran suivant :

Installation terminée

Clique sur le bouton Démarrer. Tu devrais voir le tableau de bord Cacti dans l’écran suivant :

Tableau de bord des cactus

Conclusion

Félicitations ! Tu as réussi à installer et à configurer l’outil de surveillance Cacti sur le serveur Ubuntu 20.04. Tu peux maintenant ajouter des périphériques réseau à partir du tableau de bord Cacti et commencer à les surveiller depuis le navigateur Web. N’hésite pas à me demander si tu as des questions.

Vous aimerez aussi...