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.
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 cactiuser@localhost 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 cactiuser@localhost;
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://ton-ip-serveur/cacti. Tu seras redirigé vers la page de connexion de 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 :
Clique sur le bouton Démarrer. Tu devrais voir le tableau de bord Cacti dans l’écran suivant :
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.
>>> Tiré de howtoforge.fr