Installation de Nagios

Système requis

Nagios s'installe sur un serveur Debian disposant de fonctionnalités réseau et de serveur Web. Les fonctionnalités de serveur Web doivent également être installées.

Prérequis

Avant l'installation des services, il faut procéder à une mise à jour du système

sudo apt-get update
sudo apt-get upgrade
apt-get install -y autoconf gcc libc6 make wget unzip apache2 apache2-utils php libgd-dev
apt-get install openssl libssl-dev

Il faut maintenant avoir les sources pour l'installation:

cd /tmp
wget -O nagioscore.tar.gz https://github.com/NagiosEnterprises/nagioscore/archive/nagios-4.4.14.tar.gz
tar xzf nagioscore.tar.gz

Une fois téléchargées, les sources devront être compilées

cd /tmp/nagioscore-nagios-4.4.14/
./configure --with-httpd-conf=/etc/apache2/sites-enabled
make all

Nagios fonctionne avec des utilisateurs dédiés à créer:

make install-groups-users
usermod -a -G nagios www-data

Installation et configuration initiale

Il est désormais temps d'installer Nagios à partir des fichiers binaires pour les différents services

sudo make install
sudo make install-daemoninit
sudo make install-commandmode
sudo make install-config

Configuration pour le serveur Web Apache

sudo make install-webconf
sudo a2enmod rewrite
sudo a2enmod cgi

il faut également ouvrir le port 80 pour pouvoir accéder à l'interface web (seulement si vous avez installé un firewall type iptables)

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

Il faut désormais créer le compte utilisateur et le mot de passe associé pour Apache

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

Maintenant, il faudra démarrer le service avec

systemctl restart apache2.service

Mise en route de Nagios

Maintenant que les services sont installés, il faut désormais lancer le service Nagios par un démarrage des services.

sudo systemctl start nagios.service

Il faudra ensuite modifier le fichier de configuration de Nagios pour activer ou désactiver les options concernées.

sudo nano /usr/local/nagios/etc/nagios.cfg

A partir de ce fichier, il faudra décommenter les composants à activer (en retirant le # avant la ligne )

cfg_file=/usr/local/nagios/etc/objects/windows.cfg

Installation des plugins

Les plugins permettent de faire sortir de Nagios les notifications d'état de l'ensemble des composants du système.

Pour les installer, il vous faut d'abord les prérequis:

apt-get install -y autoconf gcc libc6 libmcrypt-dev make libssl-dev wget bc gawk dc build-essential snmp libnet-snmp-perl gettext


cd /tmp
wget --no-check-certificate -O nagios-plugins.tar.gz https://github.com/nagios-plugins/nagios-plugins/archive/release-2.4.6.tar.gz
tar zxf nagios-plugins.tar.gz

Il faut désormais compiler et installer ces plugins, toujours à parti du répertoire temporaire de téléchargement et décompression.

cd /tmp/nagios-plugins-release-2.4.6/
./tools/setup
./configure
make
make install

Configuration des services de monitoring

Le monitoring des services fonctionne avec un jeu de fichiers de configuration qui permet d'éditer les postes surveillés selon des paramètres entrés avec l'installation du Client Nagios sur les machines clientes et l'initialisation de ce service.

Pour l'exemple, nous utiliserons le fichier destiné à Windows Serveur, qui peut être modifié à partir de la commande suivante:

sudo nano /usr/local/nagios/etc/objects/windows.cfg

en sachant que le même type de fichier est disponibles sur:

etc...

Ce fichier doit contenir l'adresse IP modifiée de la machine de destination ainsi que les mots de passe à choisir.

Le hostname n'a pas à correspondre exactement au hostname réel de la machine.

check_command           check_nt!CLIENTVERSION -s 'password'

Cette ligne doit systématiquement être complétée du Mot de Passe.

Voir les rapports de Nagios:

Le logiciel génère des rapports d'état de statut et de connexion qui sont visibles dans un navigateur web du réseau en localhost, il faudra chercher à l'adresse suivante.

http://X.X.X.X/nagios/

A partir de cette interface, vous ne pourrez pas modifier vos fichiers de configuration mais simplement avoir un aperçu de l'état des machines du réseau:

Sur la capture d'écran, nous voyons l'onglet de résolutions des problèmes, ce qui permettra de voir sur quelle machine et quel service se situe le problème observé.

Attention: Pour l'installation du service, il n'est pas nécessaire d'installer un serveur LAMP puisque la page web de monitoring n'a pas d'information de session et ne modifie pas la configuration du service.