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:
Linux
Switches
Imprimantes
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:
La partie map permet de cartographie l'ensemble du réseau, visualiser les connexions et dépendances.
La partie hosts permet de voir les machines et la situation de remontée d'informations vis-a-vis de Nagios pour chacune d'entre elles
La partie Services se centre sur les rôles de chaque machine et la disponibilité des protocoles et services présents (et analysés) sur l'ensemble 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é.
- La section "Reports" produit des synthèses de situations et génère des graphiques basiques concernant une ou plusieurs machines sur l'espace monitoré.
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.