Surveillance réseau · 10 min read · Nov 17, 2025

Comment configurer l'outil de surveillance LibreNMS avec Nginx sur Ubuntu 16.04 LTS

LibreNMS est un outil de surveillance open source basé sur PHP/MYSQL/SNMP. C’est un système de surveillance réseau complet qui prend en charge une large gamme de matériel réseau et de systèmes d’exploitation, y compris FreeBSD, Cisco, Linux, HP, etc.

Dans ce tutoriel, je vais vous montrer comment installer et configurer l’outil de surveillance open source ‘LibreNMS’ en utilisant Nginx comme serveur web, MariaDB comme base de données, et Ubuntu 16.04 serveur comme notre serveur principal. Nous vous guiderons étape par étape sur la façon d’installer et de configurer ‘LibreNMS’ sur le serveur Ubuntu 16.04 Xenial Xerus.

Ce que nous allons faire

  1. Installer les paquets
  2. Installer le serveur web Nginx
  3. Installer et configurer PHP-FPM
  4. Installer et configurer MariaDB
  5. Télécharger et configurer LibreNMS
  6. Installateur web de LibreNMS
  7. Configuration finale

Prérequis

  • Serveur Ubuntu 16.04
  • Droits root

Étape 1 - Installer les paquets

La première étape que nous devons faire pour installer les outils de surveillance LibreNMS est d’installer certains paquets nécessaires sur le serveur. Connectez-vous à votre serveur et mettez à jour le dépôt.

ssh root@hakase-labs-server  
sudo apt update

Installez tous les paquets requis pour LibreNMS à partir du dépôt Ubuntu en utilisant la commande suivante.

apt install fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd  rrdtool git snmp graphviz

Après que l’installation soit terminée, passez à l’étape suivante.

Étape 2 - Installer le serveur web Nginx

Dans ce tutoriel, nous allons exécuter LibreNMS sous le serveur web Nginx. Nginx est un serveur web puissant qui est disponible dans les dépôts Ubuntu.

Installez nginx en utilisant la commande apt à partir du dépôt de la manière suivante.

apt install nginx

Quand c’est fait, démarrez le service et activez-le pour qu’il s’exécute automatiquement à chaque démarrage du système.

systemctl start nginx  
systemctl enable nginx

Le serveur web Nginx fonctionne sous le port par défaut 80. Nous pouvons vérifier le port en utilisant la commande netstat, et vérifier Nginx en utilisant la commande curl pour obtenir le code d’état HTTP, comme montré ci-dessous.

netstat -plntu | grep 80  
curl -I localhost

Vérifier les ports avec netstat

L’installation de Nginx est terminée.

Étape 3 - Installer et configurer PHP-FPM

LibreNMS est un outil de surveillance d’application web basé sur PHP. Il offre un support pour la nouvelle version PHP 7.0, et nous allons l’utiliser pour ce guide.

Installez PHP, PHP-FPM, et toutes les extensions/modules nécessaires pour l’installation de LibreNMS en utilisant la commande apt ci-dessous.

apt install php7.0-cli php7.0-mysql php7.0-gd php7.0-snmp php-pear php7.0-curl php7.0-fpm php7.0-mcrypt php7.0-json php-net-ipv4 php-net-ipv6

Ensuite, nous devons ajouter quelques configurations aux fichiers php.ini. Nous devons définir le fuseau horaire par défaut dans le fichier php.ini et nous assurer que le fuseau horaire correspond au fuseau horaire actuel utilisé par le système.

Vérifiez le fuseau horaire actuellement utilisé par le système avec la commande suivante.

timedatectl

Vous devriez obtenir un résultat similaire à celui-ci.

Vérifier les paramètres de fuseau horaire

Vous pouvez voir que le serveur utilise le fuseau horaire ‘Europe/Paris‘.

Maintenant, allez dans le répertoire de configuration PHP et éditez les fichiers php.ini pour la configuration cli et fpm.

cd /etc/php/7.0/  
vim fpm/php.ini  
vim cli/php.ini

Décommentez la ligne ‘date.time‘ et changez la valeur avec notre fuseau horaire système ‘Europe/Paris‘.

date.time = Europe/Paris

Décommentez la configuration cgi ci-dessous, changez la valeur à 0.

cgi.fix_pathinfo = 0

Enregistrez et quittez.

Toute la configuration est terminée. Maintenant, démarrez le service et activez-le pour qu’il se lance à chaque démarrage du système en utilisant les commandes systemctl suivantes.

systemctl start php7.0-fpm  
systemctl enable php7.0-fpm

PHP-FPM fonctionne maintenant sur le serveur ubuntu - il fonctionne sous le fichier sock. Vérifiez-le avec la commande netstat.

netstat -pl | grep php

Vérifier le processus PHP-FPM

Étape 4 - Installer et configurer MariaDB

Dans cette étape, nous allons installer le serveur mariadb pour la base de données LibreNMS. Nous allons installer, configurer et créer une nouvelle base de données et un nouvel utilisateur pour l’installation de LibreNMS.

Installez le serveur mariadb à partir du dépôt ubuntu en utilisant la commande apt ci-dessous.

apt install mariadb-server mariadb-client mariadb

Quand c’est fait, démarrez le service, et activez-le pour qu’il s’exécute automatiquement au démarrage du système, ce que vous pouvez faire en utilisant les commandes systemctl suivantes.

systemctl start mysql  
systemctl enable mysql

Le serveur de base de données mariadb fonctionne maintenant. Ensuite, nous devons configurer le mot de passe root pour mariadb. Nous pouvons utiliser la commande ‘mysql_secure_installation’ ci-dessous pour configurer le mot de passe root.

mysql_secure_installation

Vous serez invité à entrer le nouveau mot de passe root - tapez votre mot de passe et appuyez sur ‘Entrée’ pour continuer.

Set root password? [Y/n] Y  
Remove anonymous users? [Y/n] Y  
Disallow root login remotely? [Y/n] Y  
Remove test database and access to it? [Y/n] Y  
Reload privilege tables now? [Y/n] Y

Le mot de passe root pour mariadb a été configuré.

Ensuite, nous devons créer une nouvelle base de données et un utilisateur pour LibreNMS. Nous allons créer une nouvelle base de données nommée ‘librenms’, un nouvel utilisateur nommé ‘librenms’ avec le mot de passe ‘hakase-labs123’.

Connectez-vous à l’interface de commande mariadb en utilisant la commande suivante.

mysql -u root -p  
Type the ROOT Password:

Exécutez les requêtes mariadb ci-dessous pour créer une nouvelle base de données et un utilisateur, et accorder tous les privilèges sur la base de données au nouvel utilisateur.

CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_unicode_ci;  
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'hakase-labs123';  
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';  
FLUSH PRIVILEGES;

Une nouvelle base de données et un utilisateur pour LibreNMS ont été créés.

Ajouter une base de données

Pour l’installation de LibreNMS, nous devons ajouter quelques configurations au fichier de configuration. Allez dans le répertoire ‘/etc/mysql/‘ et éditez le fichier de configuration mariadb.

cd /etc/mysql/  
vim mariadb.conf.d/50-server.cnf

Collez la configuration ci-dessous sous la section ‘[mysqld]‘.

innodb_file_per_table=1  
sql-mode=""  
lower_case_table_names=0

Enregistrez et quittez.

Modifier les paramètres de MariaDB

Maintenant, appliquez la nouvelle configuration en redémarrant le service.

systemctl restart mysql

La configuration de la base de données mariadb est terminée.

Étape 5 - Télécharger et configurer LibreNMS

Dans cette étape, nous allons configurer le système pour l’installation de LibreNMS.

- Ajouter un nouvel utilisateur et télécharger LibreNMS

Créez un nouvel utilisateur système nommé ‘librenms’, définissez ‘/opt/librenms’ comme répertoire personnel par défaut pour l’utilisateur, et assignez le nouvel utilisateur ‘librenms’ au groupe www-data.

Exécutez la commande suivante pour tout faire.

useradd librenms -d /opt/librenms -M -r  
usermod -a -G librenms www-data

Maintenant, allez dans le répertoire ‘/opt/‘ et téléchargez le code source de LibreNMS en utilisant la commande git.

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

Ajouter l'utilisateur librenms

Ensuite, créez un nouveau répertoire pour les fichiers journaux de libreNMS et les fichiers rrd.

mkdir -p /opt/librenms/{logs,rrd}

Changez les permissions de propriété pour le répertoire ‘rrd’ à ‘775’, et changez le propriétaire du répertoire ‘librenms’ à l’utilisateur et au groupe ‘librenms’.

chmod -R 775 /opt/librenms/rrd/  
chown -R librenms:librenms /opt/librenms/

Un nouveau ‘librenms’ a été créé, et le code source de LibreNMS a été téléchargé.

- Configurer le Virtualhost de LibreNMS

Allez dans le répertoire de configuration ‘nginx’ et créez un nouveau fichier de virtual host ‘librenms’ avec vim.

cd /etc/nginx/  
vim sites-available/librenms

Collez la configuration de Virtual host LibreNMS suivante.

server {  
    # Ajoutez votre propre nom de domaine  
    listen      80;  
    server_name librenms.irsyadf.me;  
  
    # Répertoire racine de LibreNMS  
    root        /opt/librenms/html;  
    index       index.php;  
  
    # Journaux de LibreNMS  
    access_log  /opt/librenms/logs/access_log;  
    error_log   /opt/librenms/logs/error_log;  
  
    # Activation de la compression Gzip sur Nginx  
    charset utf-8;  
    gzip on;  
    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 /api/v0 {  
        try_files $uri $uri/ /api_v0.php?$query_string;  
    }  
  
    # PHP-FPM gère toutes les requêtes de fichiers .php  
    location ~ \.php {  
        include fastcgi.conf;  
        fastcgi_split_path_info ^(.+\.php)(/.+)$;  
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;  
    }  
  
    location ~ /\.ht {  
        deny all;  
    }  
}

Enregistrez et quittez. Maintenant, activez le virtualhost.

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

Testez la configuration nginx et assurez-vous qu’il n’y a pas d’erreur. Puis redémarrez le service.

ginx -t  
systemctl restart nginx

- Configurer le pare-feu UFW

Ajoutez de nouveaux ports au pare-feu. Ajoutez un nouveau ssh, http, https et le port utilisé par snmpd 161 de type udp au pare-feu ufw.

Exécutez les commandes ufw suivantes.

ufw allow ssh  
ufw allow http  
ufw allow https  
ufw allow 161/udp

Configurer le pare-feu UFW

Démarrez le pare-feu ufw avec la commande ufw enable comme montré ci-dessous.

ufw enable

Tapez ‘y’ et appuyez sur ‘Entrée’ pour confirmer. Démarrez et activez-le pour qu’il se lance à chaque démarrage du système.

Si vous voulez voir l’état du pare-feu, exécutez la commande ‘ufw status’.

ufw status

Vous obtiendrez l’état du pare-feu - actif ou inactif - et la liste des ports et services ajoutés au pare-feu.

Liste de la configuration du pare-feu

Étape 6 - Installateur web de LibreNMS

Après que toutes les étapes ci-dessus soient complètes, nous devons installer LibreNMS via le navigateur web. Ouvrez votre navigateur web, tapez le nom de domaine LibreNMS ‘librenms.hakase-labs.co’ dans la barre d’adresse et appuyez sur Entrée.

- Vérification des modules PHP

Vous serez redirigé vers la page install.php montrant le résultat des vérifications de support des modules PHP. Assurez-vous que tous les statuts sont verts comme montré ci-dessous.

Installateur web de LibreNMS

Cliquez sur ‘Étape suivante‘ pour continuer.

- Configuration de la base de données

Remplissez toutes les informations de la base de données avec votre propre db.

  • Utilisateur DB: librenms
  • Mot de passe DB: hakase-labs123
  • Nom de la base de données: librenms

Définir les détails de la base de données

Et cliquez sur ‘Étape suivante‘.

- Importation de la base de données MySQL

Attendez que le script d’installation importe un échantillon de base de données dans notre base de données - ne fermez pas l’onglet du navigateur pendant ce processus.

Étape 2 terminée

Après que toute la base de données soit importée, cliquez sur ‘Aller à Ajouter un utilisateur‘.

- Ajouter un utilisateur administrateur

Ici, tapez votre utilisateur administrateur, email, et mot de passe.

Ajouter l'utilisateur administrateur

Cliquez sur ‘Ajouter un utilisateur‘.

- Générer la configuration de LibreNMS

Générer la configuration de LibreNMS

Cliquez sur le bouton ‘Générer la configuration‘.

Et vous obtiendrez un fichier de configuration similaire à celui montré ci-dessous.

Sauvegarder la configuration dans un fichier

Copiez le script de configuration php, et revenez à votre session ssh. Allez dans le répertoire ‘/opt/librenms’ et créez le fichier ‘config.php’ manuellement en utilisant vim.

cd /etc/librenms/  
vim config.php

Collez la configuration là, et changez la propriété du fichier à l’utilisateur et au groupe librenms.

chown librenms:librenms config.php

Retournez à votre navigateur web et cliquez sur le bouton ‘Terminer l’installation‘.

Maintenant, vous arrivez à la dernière page de l’installateur web de librenms - voir ci-dessous.

Installation terminée

Étape 7 - Configuration finale

Après que l’installation via le navigateur web soit complète, nous devons faire quelques autres étapes.

- Configurer SNMP

Sauvegardez le fichier de configuration par défaut et copiez l’exemple de configuration dans le répertoire ‘/etc/snmp/‘.

mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.aseli  
cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf

Éditez la nouvelle configuration avec vim.

vim /etc/snmp/snmpd.conf

Remplacez la ligne ‘RANDOMSTRINGGOESHERE’ par votre propre nom de communauté ‘hakaselabs’, comme montré ci-dessous.

com2sec readonly  default         hakaselabs

Enregistrez et quittez.

Fichier de configuration SNMP

Ensuite, nous devons télécharger le script de détection de distribution. Téléchargez-le en utilisant curl, puis rendez le script exécutable, puis enfin, redémarrez le service snmp.

curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro  
chmod +x /usr/bin/distro  
systemctl restart snmpd

- Configuration de Crontab et Logrotate

Allez dans le répertoire librenms et copiez la configuration d’exemple pour Crontab et Logrotate.

cd /opt/librenms/

Copiez la configuration.

cp librenms.nonroot.cron /etc/cron.d/librenms  
cp misc/librenms.logrotate /etc/logrotate.d/librenms

Maintenant, redémarrez le service cron et rechargez la configuration de logrotate.

systemctl restart cron  
logrotate -f /etc/logrotate.conf

- Valider la configuration

Attendez un certain temps jusqu’à ce que le script cron s’exécute sur le système. Une fois cela fait, validez avec le script ‘validate.php’.

Allez dans le répertoire librenms et exécutez le script de validation.

cd /opt/librenms/  
./validate.php

Si votre installation est correcte, vous obtiendrez le résultat comme montré ci-dessous.

Valider la configuration de LibreNMS

L’installation de LibreNMS avec le serveur web Nginx sur Ubuntu 16.04 est terminée.

Référence

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.