GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer l'outil de surveillance LibreNMS sur Debian 11

LibreNMS est un outil de surveillance de réseau gratuit, open source, basé sur le Web et à découverte automatique écrit en PHP. Il utilise MySQL ou MariaDB comme backend de base de données et utilise SNMP pour découvrir les clients distants. Il prend en charge une large gamme de périphériques réseau, notamment Linux, Cisco, Juniper, FreeBSD, HP, Windows, etc. Il prend en charge plusieurs méthodes d'authentification, notamment Radius, Active Directory, LDAP, MySQL, etc. Il est simple, convivial et facile à comprendre et à utiliser pour tout le monde.

Dans ce tutoriel, je vais vous expliquer comment installer LibreNMS avec Nginx sur Debian 11.

Prérequis

  • Un serveur exécutant Debian 11.
  • Un nom de domaine valide pointé vers l'adresse IP de votre serveur.
  • Un mot de passe root est configuré sur votre serveur.

Installer et configurer la base de données MariaDB

Tout d'abord, vous devrez installer le serveur de base de données MariaDB sur votre serveur. Vous pouvez l'installer à l'aide de la commande suivante :

apt-get install mariadb-server -y

Une fois l'installation terminée, exécutez le script suivant pour sécuriser l'installation de MariaDB et définissez un mot de passe root :

mysql_secure_installation

Répondez à toutes les questions comme indiqué ci-dessous :

Entrez le mot de passe actuel pour root (entrez pour aucun) :Passer à l'authentification unix_socket [O/n] nModifier le mot de passe root ? [O/n] YNouveau mot de passe :Saisissez à nouveau le nouveau mot de passe :Supprimer les utilisateurs anonymes ? [O/n] YInterdire la connexion root à distance ? [O/n] Supprimer la base de données de test et y accéder ? [O/n] Recharger les tables de privilèges maintenant ? [O/n] O

Une fois MariaDB sécurisée, modifiez le fichier de configuration MariaDB et modifiez certains paramètres :

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

Ajoutez les lignes suivantes dans la section [mysqld] :

innodb_file_per_table=1lower_case_table_names=0

Enregistrez et fermez le fichier puis redémarrez MariaDB pour appliquer les modifications :

systemctl redémarre mariadb

Ensuite, connectez-vous à MariaDB avec la commande suivante :

mysql -u root -p

Une fois connecté, créez une base de données et un utilisateur pour LibreNMS :

MariaDB [(none)]> CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MariaDB [(none)]> CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'securepassword';

Ensuite, accordez tous les privilèges à la base de données LibreNMS en utilisant la commande ci-dessous :

MariaDB [(none)]> ACCORDER TOUS LES PRIVILÈGES SUR librenms.* À 'librenms'@'localhost' ;

Enfin, videz les privilèges et quittez le shell MariaDB à l'aide de la commande suivante :

MariaDB [(none)]> FLUSH PRIVILEGES ;
MariaDB [(none)]> EXIT ;

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Installer Nginx, PHP et les dépendances requises

Ensuite, vous devrez installer le serveur Web Nginx, PHP et les autres dépendances requises par LibreNMS. Vous pouvez tous les installer en exécutant la commande suivante :

apt-get install nginx-full nmap php-cli php-curl php-fpm php-gd php-json php-mbstring php-mysql php-snmp php-xml php-zip python3-dotenv python3-pip python3-pymysql python3-redis python3-setuptools python3-systemd rrdtool snmp snmpd whois acl curl composer fping git graphviz imagemagick mtr-tiny

Une fois tous les packages installés, éditez le fichier php.ini et définissez votre fuseau horaire :

nano /etc/php/7.4/fpm/php.ini

Modifiez la ligne suivante :

date.timezone =UTC

Enregistrez et fermez le fichier lorsque vous avez terminé.

Installer et configurer LibreNMS

Commencez par créer un utilisateur dédié pour LibreNMS à l'aide de la commande suivante :

useradd librenms -d /opt/librenms -M -r -s /bin/bash

Ensuite, ajoutez l'utilisateur LibreNMS au groupe www-data avec la commande suivante :

usermod -a -G librenms www-data

Ensuite, téléchargez la dernière version de LibreNMS depuis le référentiel GitHub vers le répertoire /opt :

cloner git https://github.com/librenms/librenms.git /opt/librenms

Ensuite, définissez la propriété et l'autorisation du répertoire LibreNMS :

chown -R librenms:librenms /opt/librenms
chmod 775 /opt/librenms setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/ cache/ /opt/librenms/storage/
setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs /opt/librenms/bootstrap/cache/ /opt/librenms/storage/

Ensuite, changez l'utilisateur en LibreNMS avec la commande suivante :

su - librenms

Ensuite, installez le composeur PHP à l'aide de la commande suivante :

cd /opt/librenms
./scripts/composer_wrapper.php install --no-dev

Une fois Composer et les autres dépendances PHP installées, vous devriez voir le résultat suivant :

> @php artisan OptimizeConfiguration cache effacé !Configuration mise en cache avec succès !Cache de routage effacé !Routes mises en cache avec succès !Fichiers mis en cache avec succès !> @php artisan config:clearConfiguration cache effacé !> scripts/dynamic_check_requirements.py || pip3 install --user -r requirements.txt || :Exigence déjà satisfaite :PyMySQL!=1.0.0 dans /usr/lib/python3/dist-packages (à partir de -r requirements.txt (ligne 1)) (0.9.3)Exigence déjà satisfaite :python-dotenv dans /usr/ lib/python3/dist-packages (de -r requirements.txt (ligne 2)) (0.15.0)Exigence déjà satisfaite :redis>=3.0 dans /usr/lib/python3/dist-packages (de -r requirements.txt (ligne 3)) (3.5.3)Exigence déjà satisfaite :setuptools dans /usr/lib/python3/dist-packages (à partir de -r requirements.txt (ligne 4)) (52.0.0)Collecte de psutil>=5.6.0 Téléchargement de psutil-5.8.0-cp39-cp39-manylinux2010_x86_64.whl (293 ko) Collecte de command_runner>=1.3.0 Téléchargement de command_runner-1.3.0-py3-none-any.whl (17 ko) Installation des packages collectés :psutil, commande -runnerInstallé avec succès command-runner-1.3.0 psutil-5.8.0

Ensuite, quittez l'utilisateur LibreNMS en utilisant la commande ci-dessous :

quitter

Ensuite, vous devrez créer un fichier de configuration séparé pour PHP-FPM. Vous pouvez le créer avec la commande suivante :

cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/librenms.conf

Ensuite, éditez le fichier de configuration librenms.conf avec votre éditeur préféré :

nano /etc/php/7.4/fpm/pool.d/librenms.conf

Remplacez [www-data] par [librenms] et mettez également à jour le socket d'écoute :

user =librenmsgroup =librenmslisten =/run/php-fpm-librenms.sock

Enregistrez et fermez le fichier puis redémarrez le service PHP-FPM pour appliquer les changements de configuration :

systemctl redémarrer php7.4-fpm

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Configurer Nginx pour LibreNMS

Ensuite, vous devrez créer un fichier de configuration d'hôte virtuel Nginx pour LibreNMS. Vous pouvez le créer avec la commande suivante :

nano /etc/nginx/conf.d/librenms.conf

Ajoutez les lignes suivantes :

serveur { écoute 80 ; nom_serveur libre.votredomaine.com ; racine /opt/librenms/html ; index index.php; jeu de caractères utf-8 ; gzip activé ; gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon; location / { try_files $uri $uri/ /index.php?$query_string; } emplacement ~ [^/]\.php(/|$) { fastcgi_pass unix:/run/php-fpm-librenms.sock; fastcgi_split_path_info ^(.+\.php)(/.+)$; inclure fastcgi.conf ; } location ~ /\.(?!well-known).* { deny all; }}

Enregistrez et fermez le fichier puis vérifiez le Nginx pour toute erreur de syntaxe avec la commande suivante :

nginx -t

Si tout va bien, vous obtiendrez le résultat suivant :

nginx :la syntaxe du fichier de configuration /etc/nginx/nginx.conf est oknginx :le test du fichier de configuration /etc/nginx/nginx.conf est réussi

Enfin, redémarrez le Nginx pour appliquer les modifications.

systemctl redémarrer nginx php7.4-fpm

Vous pouvez également vérifier l'état de Nginx à l'aide de la commande suivante :

statut systemctl nginx

Vous devriez voir le résultat suivant :

 ? nginx.service - Un serveur Web hautes performances et un serveur proxy inverse Chargé :chargé (/lib/systemd/system/nginx.service ; activé ; préréglage du fournisseur :activé) Actif :actif (en cours d'exécution) depuis le ven. 2021-12-03 14 :39:18 UTC ; Il y a 18 s Docs :man:nginx(8) Processus :39888 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on ; master_process activé ; (code=exited, status=0/SUCCESS) Processus :39892 ExecStart=/usr/sbin/nginx -g daemon on ; master_process activé ; (code=exited, status=0/SUCCESS) PID principal :39893 (nginx) Tâches :2 (limite :2341) Mémoire :2,7 M CPU :42 ms CGroup :/system.slice/nginx.service ??39893 nginx :processus maître /usr/sbin/nginx -g démon activé ; master_process activé ; ??39894 nginx:worker processDec 03 14:39:18 debian11 systemd[1]:Démarrage Un serveur Web haute performance et un serveur proxy inverse...Dec 03 14:39:18 debian11 systemd[1]:nginx.service:Échec de l'analyse du PID à partir du fichier /run/nginx.pid :argument non valideDec 03 14:39:18 debian11 systemd[1] :démarrage d'un serveur Web hautes performances et d'un serveur proxy inverse.

Ensuite, copiez le fichier de configuration de la tâche cron pour activer la détection et l'interrogation automatiques des appareils nouvellement ajoutés.

cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms

Ensuite, copiez le fichier de configuration logrotate pour faire pivoter les anciens journaux.

cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Accéder à l'assistant d'installation Web de LibreNMS

À ce stade, LibreNMS est installé et configuré avec Nginx. Vous pouvez maintenant accéder à la configuration Web de LibreNMS à l'aide de l'URL http://libre.votredomaine.com . Vous devriez voir la page de vérification de la pré-installation :

Assurez-vous que toutes les vérifications ont réussi, puis cliquez sur la base de données icône. Vous devriez voir la page de configuration de la base de données :

Fournissez les informations de votre base de données et cliquez sur Vérifier Identifiants . Vous devriez voir la page suivante :

Maintenant, cliquez sur la clé icône pour configurer un utilisateur administrateur :

Indiquez votre nom d'utilisateur administrateur, votre mot de passe, puis cliquez sur Ajouter Utilisateur bouton. Une fois l'utilisateur créé, vous devriez voir la page suivante :

Cliquez sur Oui  icône bouton. Vous devriez voir la page suivante :

Maintenant, ouvrez un autre onglet dans votre navigateur Web et saisissez l'URL https://libre.votredomaine.com/validate pour valider l'installation. Vous devriez voir la page suivante :

Indiquez votre nom d'utilisateur et votre mot de passe d'administrateur et cliquez sur Connexion bouton. Vous devriez voir la page suivante :

Conclusion

Toutes nos félicitations! vous avez installé avec succès LibreNMS avec Nginx sur Debian 11. Vous pouvez maintenant commencer à ajouter des périphériques distants à LibreNMS et commencer à les surveiller depuis l'emplacement central. N'hésitez pas à me demander si vous avez des questions.


Debian
  1. Comment installer MariaDB sur Debian 9

  2. Comment installer MariaDB sur Debian 10

  3. Comment installer l'outil de surveillance Nagios 4.3.x sur Debian 9

  4. Comment installer MariaDB 10.x sur Debian 11

  5. Comment installer MariaDB sur Debian 11

Comment installer Cacti sur Debian 10 / Debian 9 - Un outil de surveillance

Comment installer LibreNMS sur Debian 11 / Debian 10

Comment installer MariaDB 10.6 sur Debian 11

Comment installer MariaDB sur Debian 8

Comment installer Nextcloud sur Debian 8

Comment installer LibreNMS sur Debian 10