GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer LibreNMS sur Debian 11

LibreNMS est un système de surveillance de réseau open source basé sur PHP et avec prise en charge de la découverte automatique. Il s'agit d'un fork communautaire du logiciel de surveillance Observium publié sous licence GPLv3. L'utilisation de LibreNMS vous permet de surveiller des systèmes d'exploitation tels que Linux, Windows et BSD. Il prend également en charge une large gamme de matériel réseau de plusieurs fournisseurs tels qu'Aruba, Cisco, Dell, D-Link, HP, Mikrotik, etc.

En tant que système de surveillance complet, LibreNMS fournit une multitude de fonctionnalités avec plusieurs intégrations et plusieurs protocoles de collecte de données.

Voici quelques fonctionnalités notables de LibreNMS :

  • Détectez automatiquement l'ensemble de votre réseau avec plusieurs protocoles tels que CDP, BGP, SNMP, OSPF et ARP.
  • Plusieurs méthodes d'alerte par e-mail, slacks, IRC, Rocket.chat, Telegram, etc.
  • API étendue pour la gestion, la représentation graphique et la récupération des données de votre système de surveillance.
  • Prend en charge le système de facturation pour générer des factures de bande passante en fonction de l'utilisation ou du transfert du réseau.
  • Prend en charge plusieurs méthodes d'authentification telles que MySQL, Radius, LDAP, HTTP et Active Directory.
  • Prend en charge l'authentification à deux facteurs
  • Plusieurs intégrations avec des applications tierces telles que Graylog, NfSen, Nagios Plugins, Oxidized, RANCID.
  • Vaste gamme de fournisseurs de matériel, vérifiez vos fournisseurs ici.
  • Tableau de bord convivial et personnalisable.
  • Conservez votre logiciel LibreNMS avec des supports de mise à jour automatique.
  • Application native pour Android et iOS qui fournit les fonctionnalités de base.

Dans ce guide, vous apprendrez comment installer et configurer l'outil de surveillance LibreNMS sur Debian 11 Bullseye.

Prérequis

Pour suivre ce guide, assurez-vous de remplir les conditions suivantes :

  • Système d'exploitation :Debian 11 Bullseye
  • Privilèges root

Commençons maintenant l'installation.

Installation des dépendances de packages

Dans cette première étape, vous installerez les packages de base et essentiels pour le LireNMS. Vous installerez la pile LEMP, les packages Python, snmpd et des utilitaires système supplémentaires tels que curl, fping, git et imagemagick.

1. Actualisez et mettez à jour les référentiels Debian à l'aide de la commande suivante.

mise à jour sudo apt

2. Exécutez maintenant la commande suivante pour installer les dépendances des packages.

sudo apt install acl curl composer fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php7.4-cli php7.4-curl php7.4-fpm php7.4-gd php7.4- gmp php7.4-json php7.4-mbstring php7.4-mysql php7.4-snmp php7.4-xml php7.4-zip python3-dotenv python3-pymysql python3-redis python3-setuptools python3-pip python3-systemd rrdtool snmp snmpd whois

Tapez 'y' pour confirmer l'installation et appuyez sur 'Entrée' pour continuer.

3. Une fois l'installation des dépendances des packages terminée, exécutez les commandes suivantes pour démarrer et activer des services tels que Nginx, MariaDB, PHP-FPM et snmpd.

sudo systemctl enable --now nginx
sudo systemctl enable --now mariadb
sudo systemctl enable --now php7.4-fpm
sudo systemctl enable --now snmpd.service

Vous avez maintenant terminé l'installation des dépendances de packages pour LibreNMS.

Configurer un nouvel utilisateur librenms

Dans cette étape, vous allez créer un nouvel utilisateur système 'librenms'. Votre outil de surveillance LibreNMS sera exécuté sous l'utilisateur 'librenms'.

1. Exécutez la commande suivante pour créer un nouvel utilisateur 'librenms'.

useradd librenms -d /opt/librenms -M -r -s "$(quel bash)"

Options que vous devez connaître :

  • -d /opt/librenms : Configurez le répertoire d'accueil par défaut pour l'utilisateur 'librenms' sur '/opt/librenms'.
  • -M : Ne créez pas de répertoire personnel pour l'utilisateur 'librenms'.
  • -r : Faites de cet utilisateur "librenms" un utilisateur système.
  • -s "$(quelle bash)" :Configuration du shell par défaut pour l'utilisateur 'librenms'. Le shell sera la sortie de la commande 'which bash'.

2. Ensuite, créez un nouveau mot de passe pour l'utilisateur 'librenms' en utilisant la commande suivante.

passwd librenms

Tapez un nouveau mot de passe fort et répétez.

Passez à l'étape suivante pour configurer votre système pour l'installation de LibreNMS.

Configurer le système de fuseau horaire et PHP

Le temps est un élément essentiel de la surveillance. Dans cette étape, vous allez configurer le fuseau horaire par défaut pour votre PHP et le fuseau horaire du système, assurez-vous que les deux fuseaux horaires (PHP et système) sont synchronisés et utilisent le même fuseau horaire.

1. Modifiez la configuration 'php.ini' pour PHP-FPM et CLI à l'aide de la commande suivante.

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

Décommentez l'option 'date.timezone' et mettez votre fuseau horaire après. Pour cet exemple, nous utilisons le fuseau horaire 'Europe/Paris' .

date.timezone =Europe/Paris

Enregistrez les deux configurations et quittez.

2. Redémarrez maintenant PHP-FPM pour appliquer une nouvelle configuration à l'aide de la commande suivante.

sudo systemctl redémarrer php7.4-fpm

3. Après cela, exécutez la commande timedatectl ci-dessous pour configurer le fuseau horaire par défaut du système sur 'Europe/Paris '.

sudo timedatectl set-timezone Europe/Paris

Vous avez terminé la configuration du fuseau horaire pour votre PHP et votre système.

Configurer MariaDB et créer une base de données

Dans cette étape, vous allez ajouter la configuration de MariaDB en tant qu'exigences LibreNMS, puis créer une nouvelle base de données MariaDB et un nouvel utilisateur pour l'installation de LibreNMS.

1. Modifiez la configuration du serveur MariaDB '/etc/mysql/mariadb.conf.d/50-server.cnf ' à l'aide de l'éditeur nano.

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

Ajoutez la configuration suivante sous la section '[mysqld]' .

[mysqld]
.....
....
innodb_file_per_table=1
lower_case_table_names=0

Enregistrez la configuration et quittez.

2. Pour appliquer la nouvelle configuration MariaDB, redémarrez le service à l'aide de la commande systemctl ci-dessous.

sudo systemctl redémarre mariadb

Vous avez maintenant ajouté une configuration supplémentaire au serveur MariaDB.

3. Ensuite, connectez-vous au shell MariaDB/MySQL en utilisant la commande 'mysql ' en tant qu'utilisateur 'root ' comme ci-dessous.

mysql -u root -p

Tapez votre mot de passe ou appuyez sur 'Entrée ' pour vous connecter.

4. Maintenant, exécutez les requêtes MariaDB suivantes pour créer une nouvelle base de données et l'utilisateur 'librenms '. Et assurez-vous de changer le mot de passe 'LibreNMSPassword ' avec votre mot de passe fort.

CREATE DATABASE librenms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'LibreNMSPassword';
ACCORDER TOUS LES PRIVILÈGES SUR librenms.* TO 'librenms'@'localhost';
PRIVILÈGES FLUSH ;

Tapez 'exit' et appuyez sur 'Entrée ' pour vous déconnecter du shell MariaDB.

Vous avez maintenant créé la base de données et l'utilisateur pour l'installation de LibreNMS.

Créer un nouveau pool PHP-FPM

FastCGI Process Manager (FPM) ou PHP-FPM vous permet de créer un pool personnalisé pour vos applications PHP. Par défaut, le PHP-FPM exécutant le pool 'www' avec la configuration '/etc/php/7.4/fpm/pool.d/www.conf' .

Dans cette étape, vous allez créer un nouveau pool PHP-FPM personnalisé pour LibreNMS. Vous allez créer un nouveau pool PHP-FPM 'librenms ' avec la configuration '/etc/php/7.4/fpm/pool.d/librenms.conf ', et sera exécuté sous l'utilisateur 'librenms '.

1. Tout d'abord, copiez la configuration du pool par défaut 'www.conf ' à 'librenms.conf ' à l'aide de la commande suivante.

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

2. Modifiez la configuration de pool personnalisée 'librenms.conf' à l'aide de l'éditeur nano.

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

En haut de la ligne, changez l'utilisateur par défaut de '[www]' à '[librenms]' .

[librenms]

Changez l'utilisateur et le groupe par défaut en 'librenms '.

user =librenms
group =librenms

Remplacez le fichier chaussette PHP-FPM par défaut par '/run/php-fpm-librenms.sock '.

écouter =/run/php-fpm-librenms.sock

Enregistrez la configuration et quittez.

3. Ensuite, redémarrez le service PHP-FPM pour appliquer une nouvelle configuration.

sudo systemctl redémarrer php7.4-fpm

Maintenant, le PHP-FPM va générer un nouveau pool 'librenms' avec le fichier sock '/run/php/php-fpm-librenms.sock' .

4. Vérifiez les 'librenms ' fichier chaussette à l'aide de la commande suivante.

ss -anl | grep librenms

Vous verrez une sortie similaire à celle ci-dessous.

u_str LISTEN 0      511               /run/php/php-fpm-librenms.sock 69199                  * 0     utilisateurs :(("php-fpm7.4",pid=26105,fd=10),("php-fpm7.4 ",pid=26104,fd=10),("php-fpm7.4",pid=26103,fd=7))

Vous êtes maintenant prêt à télécharger et installer l'outil de surveillance LibreNMS.

Télécharger LibreNMS

Dans cette étape, vous allez télécharger le code source de LibreNMS et configurer l'autorisation et le contrôle d'accès pour celui-ci.

1. Changez votre répertoire de travail en '/opt' et téléchargez le code source LibreNMS en utilisant la commande git comme ci-dessous.

cd /opt/
clone git https://github.com/librenms/librenms.git

Votre installation LibreNMS est le '/opt/librenms ' répertoire.

2. Modifiez la propriété et l'autorisation de l'installation de LibreNMS à l'aide de la commande suivante.

chown -R librenms:librenms /opt/librenms
chmod 771 /opt/librenms

3. Ensuite, configurez les listes de contrôle d'accès (ACL) pour le répertoire d'installation de LibreNMS. Permet au groupe de lire, écrire, exécuter sur chaque répertoire ci-dessous à l'aide de la commande setfacl suivante.

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/

Passez à l'étape suivante pour installer les dépendances PHP pour LibreNMS.

Installation des dépendances PHP de LibreNMS

Pour installer les dépendances PHP de LibreNMS, vous devez vous connecter en tant qu'utilisateur 'librenms' et utiliser le composer_wrapper, qui est inclus dans le code source de LibreNMS.

1. connectez-vous en tant qu'utilisateur 'librenms' en utilisant la commande suivante.

su - librenms

2. Exécutez le script PHP 'composer_wrapper.php ' pour installer les dépendances des packages PHP pour LibreNMS.

./scripts/composer_wrapper.php install --no-dev

3. Une fois tous les processus de téléchargement terminés, tapez 'exit ' et appuyez sur 'Entrée ' pour se déconnecter de l'utilisateur 'librenms '.

Vous avez maintenant terminé l'installation des dépendances PHP pour LibreNMS.

Configuration de Nginx pour LibreNMS

Dans cette étape, vous allez créer un nouveau bloc de serveur Nginx pour l'outil de surveillance LibreNMS. Cet exemple utilisera le nom de domaine 'librenms.example.io'.

1. Créez une nouvelle configuration de blocs de serveur Nginx 'librenms ' à l'aide de l'éditeur nano.

sudo nano /etc/nginx/sites-available/librenms

Copiez et collez la configuration suivante. Et assurez-vous de changer le nom de domaine avec votre domaine.

server {
 listen      80 ;
 nom_serveur librenms.example.io ;
 racine        /opt/librenms/html ;
 index       index.php ;

 charset 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;
 emplacement / {
  try_files $uri $uri/ /index.php?$query_string;
 }
 emplacement ~ [^/]\.php( /|$) {
  fastcgi_pass unix :/run/php-fpm-librenms.sock ;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  inclut fastcgi. conf;
 }
 location ~ /\.(?!well-known).* {
  deny all ;
 }
}

Pour une installation HTTPS LibreNMS sécurisée, utilisez la configuration suivante. Et assurez-vous de changer le nom de domaine et le chemin des certificats SSL.

server {
    listen      80 ;
    server_name librenms.example.io ;
    rewrite     ^   https://$server_name$request_uri ? permanent ;
}

serveur {

 nom_serveur librenms.example.io ;
 racine        /opt/librenms/html ;
 index       index .php;

   listen 443 ssl http2;
    nom_serveur example.io;
    ssl_certificate           /etc/letsencrypt/live/librenms.example.io/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/librenms.example.io/privkey.pem ;

    ssl_session_cache  builtin:1000  shared:SSL:10m ;
    ssl_protocols TLSv1.2 ;
ssl_ciphers HIGH : aNULL : !eNULL : EXPORT : CAMELLIA : !DES : !MD5 : !PSK : !RC4 ;
    ssl_prefer_server_ciphers activé ;

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;
 }
 location ~ [^/]\.php(/|$) {
  fastcgi_pass unix :/run/php/php-fpm-librenms.sock ;
  fastcgi_ split_path_info ^(.+\.php)(/.+)$;
 incluez fastcgi.conf;
 }
 location ~ /\.(?!well-known).* {
  tout refuser ;
 }
}

Enregistrez maintenant la configuration et quittez.

2. Ensuite, activez le nouvel hôte virtuel 'librenms ' et vérifiez la configuration nginx à l'aide de la commande suivante.

sudo ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/
sudo nginx -t

Si votre configuration est correcte, vous verrez le message de sortie tel que 'test réussi' .

3. Enfin, redémarrez le service nginx pour appliquer une nouvelle configuration.

sudo systemctl redémarrer nginx

Vous avez maintenant terminé la configuration du bloc de serveur Nginx pour LibreNMS. Vous êtes prêt à démarrer l'installation de LibreNMS.

Démarrer l'installation de LibreNMS

Pour démarrer l'installation de LibreNMS, ouvrez votre navigateur Web et saisissez le nom de domaine LibreNMS dans la barre d'adresse.

https://librenms.example.io.

1. Vous verrez les vérifications de pré-installation de LibreNMS '. Assurez-vous que tous les statuts sont en vert, puis cliquez sur l'icône de la base de données pour continuer.

2. Saisissez votre base de données, votre utilisateur et votre mot de passe. Cliquez ensuite sur le bouton 'Vérifier les informations d'identification '.

Cela effectuera la vérification de votre base de données et de votre utilisateur MariaDB. En cas de succès, vous verrez la marque verte sur les 'Identifiants de base de données '.

3. Cliquez maintenant sur le bouton 'Créer une base de données ' pour importer le schéma de la base de données pour votre LibreNMS.

Une fois la configuration de la base de données terminée, assurez-vous que les deux sections 'Database Credentials ' et 'Créer une base de données ' marquer en vert.

4. Cliquez maintenant sur la 'Clé ' pour continuer.

Tapez le nouvel utilisateur, le mot de passe et l'adresse e-mail pour créer l'utilisateur administrateur LibreNMS.

Cliquez sur le bouton 'Ajouter un utilisateur '.

Si votre utilisateur admin est créé, vous verrez votre utilisateur admin sur la page ci-dessous.

5. Cliquez sur l'icône de marque pour terminer l'installation. Vous trouverez ci-dessous la sortie que vous obtiendrez.

Pour terminer l'installation de LibreNMS, ouvrez la page de validation de LibreNMS comme ci-dessous.

https://librenms.example.io/validate

6. Et vous serez redirigé vers la page de connexion LibreNMS.

Saisissez votre nom d'utilisateur et votre mot de passe administrateur, puis cliquez sur 'Connexion ' bouton

7. Sur les pages de validation de LibreNMS, vous verrez quelques erreurs comme ci-dessous.

Vous pouvez avoir différentes erreurs, mais la page de validation de LibreNMS fournit des solutions à votre erreur.

8. Vous trouverez ci-dessous quelques erreurs dans notre installation et comment les corriger.

- Corriger le fuseau horaire de la base de données

Connectez-vous au shell MariaDB en utilisant votre utilisateur root.

mysql -u root -p

Changez la base de données actuelle en 'librenms'.

utiliser librenms ;

Exécutez maintenant les requêtes suivantes pour corriger l'erreur de fuseau horaire de la base de données.

SET TIME_ZONE='+00:00';
ALTER TABLE `notifications` CHANGE `datetime` `datetime` timestamp NOT NULL DEFAULT '1970-01-02 00:00:00';
ALTER TABLE `users` CHANGE `created_at` `created_at` timestamp NOT NULL DEFAULT '1970-01-02 00:00:01';

- Corriger les erreurs système

Ajoutez la commande binaire LibreNMS 'lnms' au '/usr/bin ' à l'aide de la commande suivante.

sudo ln -s /opt/librenms/lnms /usr/bin/lnms

Activer l'achèvement bash pour la commande 'lnms'.

sudo cp /opt/librenms/misc/lnms-completion.bash /etc/bash_completion.d/

Enfin, copiez la configuration de logrotate pour LibreNMS dans le répertoire '/etc/logrotate.d/'.

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

9. Après avoir corrigé les erreurs LibreNMS, revenez aux pages de validation LibreNMS et rechargez la page.

Assurez-vous maintenant que tous les statuts sont 'OK '.

10. Cliquez sur 'Aperçu ' pour afficher le tableau de bord.

Vous avez maintenant terminé l'installation de LibreNMS sur Debian 11 Bullseye.

Conclusion

Félicitations ! Vous avez installé avec succès l'outil de surveillance LibreNMS avec Nginx, PHP-FPM et la base de données MariaDB sur la dernière Debian 11 Bullseye. De plus, vous avez appris à créer le pool PHP-FPM personnalisé et à corriger certaines erreurs d'installation de LibreNMS.

Pour la prochaine étape, vous apprendrez comment ajouter des hôtes à surveiller à l'outil de surveillance LibreNMS.


Debian
  1. Comment installer R sur Debian 9

  2. Comment installer R sur Debian 10

  3. Comment installer Gradle sur Debian 10

  4. Comment installer AnyDesk sur Debian 10

  5. Comment installer Webmin sur Debian 9

Comment installer Webmin sur Debian 11

Comment installer Go sur Debian 10

Comment installer LibreNMS sur Debian 10

Comment installer LibreNMS sur Debian 11

Comment installer Cockpit sur Debian 10

Comment installer Go sur Debian