Dans le monde où les réseaux deviennent d’énorme système indépendant mais ouverts à d’énorme problème de sécurité.Il est nécessaire de garder un œil sur notre réseau, Nagios est l’outil par excellence dans ce domaine.
Il permet de faire du monitoring de réseau que se soit du petit switch au serveur de virtualisation en passant par le pc de la secrétaire.Mais Nagios est un outil puissant mais pas si facile à configurer, il en va par la modification de fichier via des constantes ou autres pour ajouter un service, host ou autre.
Centreon est une aide précieuse pour cela. Il va lui-même générer les fichiers en passant via une interface graphique beaucoup conviviale.
Et enfin, NagVis, est un outil qui va générer divers graphique en fonction de la topologie réseau par exemple, via diverses images et formes venant par exemple de Microsoft Visio. Vue en rack, topologie étoile, monde web, etc…

Dans cette partie, nous allons voir tout d'abord l'installation de Nagios.

I. Installation Nagios

apt-get install linux-headers-`uname -r` build-essential g++ gcc apache2 php5 mysql-server snmp snmpd 
apt-get install php5-mysql php5-snmp libmysqlclient15-dev php5-ldap php-pear php5-gd
apt-get install (libgd2-noxpm-dev) libpng12-dev libjpeg62 libjpeg62-dev rrdtool libapache2-mod-php5
su
cd /tmp  
wget http://mesh.dl.sourceforge.net/sourceforge/nagios/nagios-3.0.6.tar.gz  
tar xzf nagios-3.0.6.tar.gz
 
/usr/sbin/useradd nagios
passwd nagios  
/usr/sbin/groupadd nagios 
/usr/sbin/usermod -G nagios nagios  
/usr/sbin/groupadd nagcmd  
/usr/sbin/usermod -G nagcmd nagios  
/usr/sbin/usermod -G nagcmd www-data  
 
cd nagios-3.0.6  
./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-command-group=nagcmd  
make all
make install  
make install-init  
make install-config  
make install-commandmode  
 
ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios

II. Installation de l’interface Web

make install-webconf
sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
/etc/init.d/apache2 reload

III. Installation des Plugins de Nagios

cd ..
wget http://ovh.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.13.tar.gz
tar xzf nagios-plugins-1.4.13.tar.gz
cd nagios-plugins-1.4.13
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install

IV. Configuration Initiale de Nagios

Nagios est maintenant installé sur votre machine. Avant de pouvoir le lancer, il faut éditer les fichiers de configuration qui se trouve dans le répertoire /usr/local/nagios/etc. Pour faire un premier test, le seul fichier à configurer avant d’exécuter Nagios est le fichier /usr/local/nagios/etc/objects/contacts.cfg et de changer l’adresse email de contact (nagiosadmin) ou seront envoyés les mails en cas d’alerte.

Pour la configuration finale en fonction de vos besoins, vous pouvez consulter cette page qui décrit les fichiers de configurations. Pour vérifier que la configration de Nagios est bonne (qu’il n’y a pas d’erreur dans les fichiers de configuration), vous pouvez utiliser l’option “-v” de la commande nagios:

su
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

V. Démarrage de Nagios

/etc/init.d/nagios start

S’il manque le fichier statusmap.cgi :

Pour la version Sarge de Débian

apt-get install php5-gd libgd2 libfreetype6-dev libjpeg62-dev libpng2-dev xlibs-dev zlib1g-dev libgd2-xpm libgd2-xpm-dev libgd2 libgd2-dev
apt-get install libgd2-noxpm libgd2-noxpm-dev libgd2-xpm libgd2-xpm-dev

Pour la version Etch de Débian

apt-get install libgd-dev

VI. Configuration PHP5

Activer le module gd.so et mysql.so de PHP en éditant le fichier /etc/php5/apache2/php.ini

« Enlever le caractère ‘#’ devant la ligne extension=gd.so et extension=mysql.so »

Dans le dossier décompressé de Nagios :

cd /tmp/nagios-3.0.6
make devclean
./configure --with-gd-lib=/usr/lib --with-gd-inc=/usr/include
make cgis
cd cgi
cp *.cgi /usr/local/nagios/sbin

VII. Test des performances de Nagios

/usr/local/nagios/bin/nagiostats -c /usr/local/nagios/etc/nagios.cfg

Les résultats de la ligne « Active Service Latency » ne doivent pas être trop importants (plusieurs dizaines/centaines de secondes) :
Active Service Latency: 0.043 / 0.862 / 0.462 sec

Ces chiffres augmentent de manière importante quand il y a des hôtes ou services en état DOWN ou UNKNOWN.