Installation Nagios · 12 min read · Oct 18, 2025

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

Ce tutoriel vous montrera comment installer et configurer la dernière version de Nagios Core, actuellement 4.3.4, à partir des sources sur Debian 9.1, nom de code Stretch.

Nagios, également connu sous le nom de Nagios Core, est un outil de surveillance réseau Open Source gratuit, activement maintenu par ses développeurs, conçu pour surveiller l’ensemble de l’infrastructure réseau. Nagios peut surveiller presque tous les appareils réseau, tant que l’appareil a une connexion réseau configurée, tels que des routeurs, des commutateurs, des serveurs, des ordinateurs de bureau, des pare-feu, des appareils IoT. En plus de surveiller les appareils afin de déterminer leur état réseau, Nagios peut également surveiller les services réseau, les applications ou d’autres tâches spécifiques liées aux systèmes d’exploitation et peut être configuré pour envoyer des alertes par mail ou SMS afin d’informer les administrateurs réseau des éventuels appareils, pannes ou défaillances de service.

Exigences

  • Debian 9.1 installé sur une machine bare-metal ou sur un serveur privé virtuel. De préférence, l’installation doit être effectuée avec des exigences logicielles minimales.
  • La carte d’interface réseau configurée avec une adresse IP statique.
  • Accès au compte root ou à un utilisateur avec des privilèges de compte root via sudo.
  • Un nom de domaine, privé ou public, avec les enregistrements DNS A appropriés configurés. Dans le cas où vous n’avez pas de serveur DNS configuré chez vous, vous pouvez accéder à Nagios via l’adresse IP du serveur.

Configuration initiale

Avant de commencer à installer Nagios à partir des sources, assurez-vous que le système répond à toutes les exigences logicielles pour compiler et installer Nagios. Dans un premier temps, mettez à jour vos dépôts système et vos paquets logiciels en émettant la commande ci-dessous.

apt update
apt upgrade

Installer les mises à jour Debian

Dans l’étape suivante, lancez une nouvelle commande afin d’installer quelques utilitaires nécessaires qui seront utilisés pour gérer votre système depuis la ligne de commande.

apt install wget unzip zip bash-completion

N ext, configurez le nom de votre système en exécutant la commande suivante :

hostnamectl set-hostname nagios.server.lan

Vérifiez le nom d’hôte de la machine et le fichier hosts en émettant les commandes ci-dessous.

hostnamectl
cat /etc/hostname
cat /etc/hosts

Enfin, redémarrez le système afin d’appliquer le nouveau nom d’hôte.

init 6

Nagios est une application de surveillance basée sur le web avec certaines parties écrites en langage de programmation côté serveur PHP et d’autres programmes CGI. Afin d’exécuter les scripts de fichiers PHP de Nagios, un serveur web, tel qu’Apache HTTP server, et une passerelle de traitement PHP doivent être installés et opérationnels dans le système. Pour installer le serveur web Apache et l’interpréteur PHP ainsi que tous les modules PHP requis nécessaires au bon fonctionnement de Nagios 4, émettez la commande suivante dans la console de votre serveur.

apt install apache2 libapache2-mod-php7.0 php7.0

Après l’installation d’Apache et de PHP, testez si le serveur web est en ligne et écoute les connexions réseau sur le port 80 en émettant la commande suivante avec des privilèges root.

netstat –tlpn

Dans le cas où l’utilitaire réseau netstat n’est pas installé par défaut dans votre système Debian 9, exécutez la commande ci-dessous pour l’installer.

apt install net-tools

Vérifier l'installation d'apache avec la commande netstat

En inspectant la sortie de la commande netstat, vous pouvez voir que le serveur web apache écoute les connexions réseau entrantes sur le port 80.

Dans le cas où vous avez un pare-feu activé sur votre système, tel que l’application de pare-feu UFW, vous devez ajouter une nouvelle règle pour permettre au trafic HTTP de passer à travers le pare-feu en émettant la commande suivante.

ufw allow WWW

ou

ufw allow 80/tcp

Dans le cas où vous souhaitez utiliser des règles brutes iptables pour autoriser le trafic entrant sur le port 80 dans le pare-feu afin que les visiteurs puissent naviguer sur l’interface web de Nagios Core, ajoutez la règle suivante.

apt-get install -y iptables-persistent
iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

Ensuite, activez et appliquez les modules Apache suivants requis par l’application web Nagios pour fonctionner correctement, en émettant la commande ci-dessous.

a2enmod rewrite headers cgi
systemctl restart apache2

Activer les modules apache

Enfin, testez si la page web par défaut du serveur Apache peut être affichée dans le navigateur de votre client en visitant l’adresse IP de votre machine Debian ou le nom de domaine via le protocole HTTP, comme indiqué dans l’image ci-dessous. Si vous ne connaissez pas l’adresse IP de votre machine, exécutez les commandes ifconfig ou ip a.

http://192.168.1.14

Page web par défaut d'Apache

Dans l’étape suivante, nous devons apporter quelques modifications supplémentaires au fichier de configuration PHP par défaut afin de nous assurer que le paramètre timezone de PHP est correctement configuré et correspond à votre emplacement physique. Ouvrez le fichier /etc/php/7.0/apache2/php.ini pour l’éditer et assurez-vous que les lignes suivantes sont configurées comme suit.

date.timezone = Europe/London

Remplacez la variable de fuseau horaire en fonction de votre heure physique en consultant la liste des fuseaux horaires fournie par la documentation PHP à l’adresse suivante http://php.net/manual/en/timezones.php.

Redémarrez le démon apache pour appliquer les modifications.

systemctl restart apache2

Après avoir effectué les modifications requises, créez un fichier d’informations PHP et redémarrez le démon apache pour appliquer les modifications en émettant les commandes suivantes.

echo ''| tee /var/www/html/info.php
systemctl restart apache2

Vérifiez si le fuseau horaire PHP a été correctement configuré en visitant le fichier de script phpinfo depuis un navigateur à l’URL suivante, comme illustré dans l’image ci-dessous. Faites défiler vers le bas jusqu’à la configuration de la date pour vérifier le paramètre de fuseau horaire php.

http://192.168.1.14/info.php

Vérifier le paramètre de fuseau horaire PHP

Installer Nagios Core

Avant de télécharger et de compiler Nagios Core à partir des sources, assurez-vous d’abord d’installer les paquets pré-requis suivants dans votre système, en émettant la commande ci-dessous.

apt install autoconf gcc libc6 make apache2-utils libgd-dev

Après que toutes les dépendances et paquets nécessaires pour compiler Nagios à partir des sources soient installés sur votre système Debian, visitez le site officiel de Nagios à l’adresse https://www.nagios.org/downloads/nagios-core/ et téléchargez la dernière version de l’archive source stable de Nagios Core en émettant l’utilitaire wget, comme indiqué dans l’extrait de commande suivant.

wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.3.4.tar.gz

Après que l’archive tar de la source de Nagios ait été téléchargée, extrayez l’archive tar et entrez dans le répertoire nagios extrait, avec les commandes suivantes. Exécutez la commande ls à l’intérieur du répertoire nagios extrait afin de lister les fichiers sources.

tar xzf nagios-4.3.4.tar.gz
cd nagios-4.3.4/
ls

Télécharger Nagios

Alors que vous êtes à l’intérieur du répertoire des sources extraites de Nagios, commencez le processus de compilation de Nagios à partir des sources en émettant les commandes ci-dessous. Tout d’abord, configurez Nagios pour être compilé avec le chemin de configuration http du serveur web Apache pointant vers le répertoire sites-enabled.

./configure --with-httpd-conf=/etc/apache2/sites-enabled

Ensuite, compilez Nagios en émettant la commande suivante, comme illustré dans les images ci-dessous.

make all

Configurer et créer Nagios

Construire Nagios à partir de la source

Ensuite, créez l’utilisateur et le groupe système nagios et ajoutez le compte nagios à l’utilisateur d’exécution Apache afin que l’utilisateur nagios ait les autorisations requises pour accéder aux ressources web.

useradd nagios
usermod -a -G nagios www-data

Maintenant, commencez à installer les fichiers binaires de Nagios, les scripts CGI et les fichiers HTML en émettant la commande suivante. La sortie finale de la commande make install doit afficher les emplacements binaires, comme indiqué dans l’image ci-dessous.

make install

Installer les fichiers Nagios compilés

Ensuite, installez les fichiers d’initialisation systemd du démon Nagios et activez le service nagios au niveau système en émettant les commandes suivantes.

make install-init
systemctl enable nagios.service

Installer les fichiers d'initialisation de Nagios

De plus, installez et configurez le fichier de commande externe de Nagios en exécutant la commande ci-dessous.

make install-commandmode

Ensuite, exécutez la commande suivante afin d’installer les fichiers de configuration d’exemple de Nagios qui sont requis par le démon Nagios pour démarrer et fonctionner correctement.

make install-config

Installer les fichiers de configuration d'exemple de Nagios

Enfin, installez le fichier de configuration du serveur web Apache pour Nagios, qui sera situé dans le répertoire /etc/apacahe2/sites-enabled/, en exécutant la commande ci-dessous.

make install-webconf

Installer la configuration web d'apache de Nagios

Créez le compte utilisateur nagiosadmin avec le mot de passe correspondant requis par le serveur web Apache pour pouvoir se connecter à l’outil web Nagios en émettant la commande suivante.

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Afin d’accéder au panneau web de Nagios, redémarrez d’abord le serveur HTTP Apache et démarrez le service Nagios en émettant les commandes suivantes.

systemctl restart apache2
systemctl start nagios

Ensuite, connectez-vous à l’interface web de Nagios en ouvrant un navigateur et en visitant l’adresse IP de votre serveur ou le nom de domaine ou FQDN et en ajoutant le chemin d’URL /nagios via le protocole HTTP, comme illustré dans les captures d’écran ci-dessous. Utilisez l’utilisateur nagiosadmin avec le mot de passe configuré précédemment pour cet utilisateur afin de vous connecter à l’interface web de Nagios.

Connexion à Nagios

Tableau de bord de Nagios

Installer les plugins Nagios

Le moteur Nagios est maintenant installé sur le système. Cependant, le logiciel Nagios n’est pas encore opérationnel, car les plugins qui sont utilisés pour vérifier les hôtes et les services ne sont pas installés. Ce comportement peut être observé en naviguant dans le menu Hôtes où vous remarquerez les erreurs de plugin, comme indiqué dans la capture d’écran ci-dessous.

Nagios pas encore de plugins installés

Afin de compiler et d’installer quelques plugins Nagios de base à partir de la source, assurez-vous d’abord d’installer les bibliothèques et dépendances suivantes en émettant la commande suivante.

apt install libmcrypt-dev make libssl-dev bc gawk dc build-essential snmp libnet-snmp-perl gettext libldap2-dev smbclient fping default-libmysqlclient-dev

Après que tous les paquets de dépendances aient été installés dans votre système, rendez-vous sur la page du dépôt des plugins Nagios en visitant l’adresse suivante https://github.com/nagios-plugins/nagios-plugins/releases et récupérez la dernière archive de code source avec l’aide de l’utilitaire en ligne de commande wget, comme indiqué dans l’exemple de commande ci-dessous.

wget https://github.com/nagios-plugins/nagios-plugins/archive/release-2.2.1.tar.gz

Ensuite, extrayez l’archive tar du code source des plugins Nagios et entrez dans le répertoire nagios-plugins extrait en exécutant les commandes suivantes.

tar xfz release-2.2.1.tar.gz
cd nagios-plugins-release-2.2.1/

Télécharger les plugins Nagios

Afin de compiler et d’installer les plugins Nagios à partir des sources, exécutez les scripts et commandes suivants avec des privilèges root, comme indiqué dans l’extrait ci-dessous.

./tools/setup
./configure
make
make install

Après que tous les plugins aient été installés, vous pouvez les localiser à l’emplacement système /usr/local/nagios/libexec/. Émettez la commande ls afin d’examiner tout le contenu du répertoire /usr/local/nagios/libexec/ et de voir quels plugins sont disponibles pour Nagios dans votre système.

ls /usr/local/nagios/libexec/

Répertoire Libexec de Nagios

Afin que le moteur Nagios prenne en compte et utilise les plugins installés, vous devez redémarrer et vérifier l’état du service nagios avec les commandes suivantes.

systemctl restart nagios.service
systemctl status nagios.service

Pour tester si les plugins Nagios fonctionnent comme prévu, reconnectez-vous à l’interface web de Nagios en ouvrant un navigateur et en visitant l’adresse IP de votre serveur, FQDN ou nom de domaine et en naviguant vers le menu Hôtes ou Services, comme illustré dans la capture d’écran ci-dessous. Les hôtes et services surveillés devraient maintenant être vérifiés par les plugins et afficher la sortie correcte, en fonction du statut de sortie de la commande du plugin. Les couleurs affichées sont : vert pour OK, jaune pour Avertissement et rouge pour Critique.

Services surveillés par Nagios

Afin d’utiliser le protocole HTTPS pour accéder à l’interface web du moteur Nagios via une connexion sécurisée, émettez la commande suivante pour activer le module SSL du serveur web Apache et le fichier de configuration du site SSL.

a2enmod ssl
a2ensite default-ssl.conf

Ensuite, afin de forcer les visiteurs à être automatiquement redirigés vers le protocole HTTPS chaque fois qu’ils visitent l’interface web de Nagios depuis leurs navigateurs, ouvrez le fichier /etc/apache2/sites-enabled/000-default.conf pour l’éditer et ajoutez les règles de réécriture suivantes après l’instruction DocumentRoot comme indiqué dans l’exemple ci-dessous.

RewriteEngine on  
RewriteCond %{HTTPS} off  
RewriteRule ^(.*) https://%{HTTP_HOST}/$1

Activer https dans apache

Enfin, redémarrez le démon Apache pour appliquer toutes les règles configurées jusqu’à présent et visitez l’interface web de Nagios via le protocole HTTP.

systemctl restart apache2.service

Afin de vérifier si Apache écoute sur le port HTTPS, exécutez la commande netstat et recherchez le port 443, comme indiqué dans l’image ci-dessous.

netstat -tlpn

Dans le cas où l’application de pare-feu UFW bloque les connexions réseau entrantes sur le port HTTPS, vous devez ajouter une nouvelle règle pour permettre au trafic HTTPS de passer à travers le pare-feu en émettant la commande suivante.

ufw allow 'WWW Full'

ou

ufw allow 443/tcp

Dans le cas où vous exécutez un pare-feu iptables pour protéger votre système Debian, ajoutez la règle suivante pour autoriser le trafic entrant sur le port 443 dans le pare-feu afin que les visiteurs puissent naviguer sur l’interface web de Nagios Core.

iptables -I INPUT -p tcp --destination-port 443 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

Maintenant, vous devriez être automatiquement redirigé vers le panneau web de Nagios via le protocole HTTPS. Comme vous utilisez les paires de certificats auto-signés automatiquement délivrées par Apache lors de l’installation, un avertissement d’erreur devrait s’afficher dans le navigateur. Acceptez l’avertissement du navigateur et connectez-vous à Nagios avec les identifiants configurés précédemment, comme indiqué dans la capture d’écran ci-dessous.

Nagios avec HTTPS

Pour ajouter un nouvel hôte à surveiller par Nagios, ouvrez le fichier de configuration /usr/local/nagios/etc/objects/localhost.cfg pour l’éditer et ajoutez le nouvel appareil après la définition de localhost, comme indiqué dans l’exemple ci-dessous.

define host{  
        use                     linux-server  
        host_name               router  
        alias                   router  
        address                 192.168.1.1  
        }

Modifier le fichier de configuration de nagios

Remplacez les variables host_name, alias et adresse IP en conséquence et redémarrez le démon Nagios pour charger la nouvelle définition d’hôte et appliquer les modifications.

systemctl restart nagios

Attendez quelques minutes et naviguez vers le menu Hôtes dans l’interface web de Nagios afin de vérifier l’état de l’appareil, comme illustré dans l’image ci-dessous.

Nagios sécurisé avec SSL / TLS

C’est tout ! Vous avez réussi à installer et configurer le moteur Nagios à partir des sources sur Debian 9. Vous pouvez commencer à ajouter vos appareils réseau, serveurs ou services critiques de votre organisation à surveiller par Nagios. Pour d’autres configurations personnalisées concernant Nagios Core et les plugins Nagios, visitez les pages de documentation à l’adresse suivante https://support.nagios.com/kb/category.php?id=12



Share: X/Twitter LinkedIn

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

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