Vous êtes sur la page 1sur 5

Univérsité Cheikh Anta Diop

École Supérieure Polytechnique


Département Génie Informatique
Année Universitaire 2022-2023
Licence Professionnelle
Option : Systemes, Réseaux et Télécommunications
Supervision d’un réseau informatique avec Nagios (Partie 1)
Dr Mandicou BA

(A) Informations Utiles :


La supervision est un élément important dans la gestion réseau. Il permet de contrôler les ressources en
supervisant certains éléments tels que la mémoire, le disque dur, la mémoire swap, la bande passante,
la connexion des serveurs au réseau, le nombre de processus, la continuité des services, les ressources
allouées aux services, le chargement d’une page web, etc.
En surveillant ces éléments, on peut assurer la continuité des services. Il existe une panoplie d’outils de
surveillance de parcs informatiques dont certains sont Open Source et gratuits à l’image de Nagios qui sera
utilisé tout au long de cet atelier.

(B) PRÉSENTATION DE NAGIOS :


Nagios est un logiciel de supervision de réseau open source sous licence GPL qui fonctionne sous Li-
nux. Il a pour fonction de surveiller les hôtes et services spécifiés, alertant l’administrateur des états des
machines et équipements présents sur le réseau.
Nagios est composé de trois parties :

(a) Le moteur de l’application, qui gère et ordonnance les supervisions des différents équipements.
(b) Les Plugins qui servent d’intermédiaire entre Nagios et les ressources que l’on souhaite superviser.
(c) L’interface web qui permet d’avoir une vue d’ensemble des états de chaque machine du parc infor-
matique supervisé et ainsi pouvoir intervenir le plus rapidement possible en ciblant la bonne panne.

(C) INSTALLATION DE NAGIOS


Avant l’installation, nous allons d’abord installer les dépendances afin de profiter pleinement de toutes les
capacités de Nagios

(a) INSTALLATION D’APACHE ET DE PHP


L’interface Web de gestion de Nagios a besoin du serveur web Apache et de l’interpréteur PHP.
s u d o a p t i n s t a l l a p a c h e 2 php l i b a p a c h e 2 −mod−php php−gd l i b g d −dev

(b) INSTALLATION DES LIBRAIRIES ET PROGRAMMES SUPPLÉMENTAIRES Nous allons en-


suite installer quelques librairies et programme supplémentaires Pour exploiter au maximum les pos-
sibilités offertes par les plugins de Nagios
s u d o a p t i n s t a l l c u r l b u i l d − e s s e n t i a l o p e n s s l z i p l i b s s l −dev l i b g d −dev

1
(c) Création de l’environnement Nagios
Le programme Nagios n’a pas besoin de tourner sous root. Il doit posséder son propre compte utilisa-
teur de même que son groupe et un répertoire dédié.
u s e r a d d −m −p $ ( o p e n s s l passwd n a g i o s ) n a g i o s
g r o u p a d d nagcmd
usermod −a −G nagcmd n a g i o s
usermod −a −G nagcmd www−d a t a
m k d i r / home / n a g i o s / d o w n l o a d s

(d) TÉLÉCHARGEMENT ET EXTRACTION DES FICHIER DE NAGIOS


Il existe plusieurs façons d’installer Nadios. Pour cet atelier nous allons installer la dernière version
stable de Nagios depuis la source.
wget h t t p s : / / a s s e t s . n a g i o s . com / d o w n l o a d s / n a g i o s c o r e / r e l e a s e s / n a g i o s − 4 . 4 . 1
t a r x v z f n a g i o s − 4 . 4 . 1 1 . t a r . gz

(e) COMPILATION DE LA SOURCE


cd n a g i o s − 4 . 4 . 6
. / c o n f i g u r e −−w i t h −h t t p d −c o n f = / e t c / a p a c h e 2 / s i t e s −e n a b l e d

s u d o make a l l
s u d o make i n s t a l l

(f) INSTALLATION DU SERVICE NAGIOS


Nous allons installer les composants nécessaires au démarrage de Nagios
make i n s t a l l −d a e m o n i n i t

(g) INSTALLATION DU PIPE DE NAGIOS


make i n s t a l l −commandmode

(h) INSTALLATION DES FICHIERS DE CONFIGURATION DE NAGIOS


make i n s t a l l −c o n f i g

(i) INSTALLATION DE L’INTERFACE WEB DE NAGIOS


make i n s t a l l −webconf

(j) ACTIVATION DES MODULES REWRITE ET CGI D’APACHE.


L’interface d’administration de Nagios nécessite les modules rewrite et CGI d’apache afin de fonc-
tionner correctement
a2enmod r e w r i t e
a2enmod c g i

(k) CONFIGURATION D’UN ACCÈS APACHE


Nous devons configurer un accès Apache htaccess afin de pouvoir accéder à l’interface d’administra-
tion de Nagios
h t p a s s w d −cb / u s r / l o c a l / n a g i o s / e t c / h t p a s s w d . u s e r s n a g i o s p a s s e r

2
(l) ATTRIBUER DES DROITS SUR L’ARBORESCENCE NAGIOS
Nous allons attribuer les droits sur l’arborescence Nagios à l’utilisateur Nagios il sera le propriétaire
de l’arborescence.
s u d o chown −R n a g i o s : nagcmd / u s r / l o c a l / n a g i o s

(m) REDÉMARRAGE DES SERVICES APACHE ET NAGIOS


Pour appliquer les changements nous allons redémarrer Nadios et apache
s y s t e m c t l r e s t a r t apache2
systemctl s t a r t nagios

Pour vérifier que Nagios tourne nous pouvons utiliser une des deux commande suivante
p s −e d f | g r e p n a g i o s
systemctl s t a t u s nagios

(D) INSTALLATION DES PLUGINS STANDARDS DE NAGIOS


Il existe deux type de plugin on a les plugins Standards développés par l’équipe de Nagios disponible
depuis le site officiel de nagios et les plugins communautaires développés par la communauté Nagios
depuis cette plateforme exchange.nagios.org.

(a) TÉLÉCHARGEMENT ET EXTRACTION DES PLUGINS STANDARDS NAGIOS


wget h t t p s : / / n a g i o s −p l u g i n s . o r g / download / n a g i o s −p l u g i n s − 2 . 4 . 4 . t a r . gz
t a r −z x v f n a g i o s −p l u g i n s − 2 . 4 . 4 . t a r . gz
cd n a g i o s −p l u g i n s − 2 . 3 . 3

(b) COMPILATION DES PLUGINS


Comme nous l’avons fait pour le core de Nagios nous allons installer les plugins depuis la source
pour ce faire nous allons lancer le script configure afin de s’assurer que les éléments nécessaires
sont présents sur le système, et aussi de dire qu’ils appartiennent à l’utilisateur Nagios et au groupe
propriétaire nagcmd.
. / c o n f i g u r e −−w i t h −n a g i o s −u s e r = n a g i o s −−w i t h −n a g i o s −g r o u p =nagcmd

make
make i n s t a l l

Nous pouvons vérifier que les plugins ont bien étés ajoutés à Nagios à l’aide de la commande suivante
/ u s r / l o c a l / n a g i o s / b i n / n a g i o s −v / u s r / l o c a l / n a g i o s / e t c / n a g i o s . c f g

3
(E) MA PREMIÈRE SUPERVISION AVEC NAGIOS
Pour surveiller un équipement ou un service informatique Nagios se base sur les quatre éléments suivants
(les plugins, les commandes, les hosts et les services). Nous allons créer le repertoire /usr/local/nagios/-
licsrt qui va recevoir nos fichiers de configuration.
mkdir / u s r / l o c a l / n a g i o s / l i c s r t
e c h o ” c f g d i r = / u s r / l o c a l / n a g i o s / l i c s r t ” >> / u s r / l o c a l / n a g i o s / e t c / n a g i o s . c f g

(a) Les plugins


Nous les avons vus l’or de l’installation de Nagios ce sont des programmes exécutables. Ils se trouvent
à l’emplacement /usr/local/nagios/libexec/ . En guise d’exemple nous allons manipuler le plugin /usr/-
local/nagios/libexec/ pour voir comment il fonctionne.
/ u s r / l o c a l / n a g i o s / l i b e x e c / c h e c k p i n g −H m a n d i c o u b a . n e t
−w 40 ,40% −c 60 ,60%

Nous avons utilisé check ping et nous lui avons passé 4 arguments. Le premier argument demande
de vérifier que le serveur associé au nom de domaine mandicouba.net répond . Le second argument
indique un seuil WARNING à 40 ms et/ou 40 % de paquets perdus. Le troisième argument indique un
seuil CRITICAL à 60 ms et/ou 60 %
(b) Les commandes
Sous Nagios une commande est un object qui permet de définir le lancement d’un plugin il est ca-
ractérisé par un nom ainsi que le chemin vers le plugin avec, éventuellement, les arguments associés.
Nous allons définir une commande qui va exécuter le plugin vu précédemment. Pour ce faire nous
allons placer dans le dossier licsrt un fichier nommé command1.cfg ayant le contenu suivant
d e f i n e command {
command name check −p i n g −m a n d i c o u b a . n e t
c o m m a n d l i n e $USER1$ / c h e c k p i n g −H m a n d i c o u b a . n e t −w 40 ,40% −c 60 ,60%
}

(c) Les hosts


Nous avons crée précédemment une commande qui va nous permettre de faire un check ping pour
pouvoir automatiser la supervision nous allons définir l’objet Nagios host en créant un fichier intitulé
mandicouba.net.cfg dans le répertoire licsrt ayant le contenu suivant
define host {
host name Nagios S er ver
a d d r e s s mandicouba . n e t
check command check −p i n g −m a n d i c o u b a . n e t
max check attempts 3
}

host name : c’est le nom de l’objet tel qu’il sera reconnu par Nagios.
address : c’est l’adresse IP ou le nom pour joindre
max check attemps : c’est le nombre de tentatives successives maximum renvoyant un résultat négatif
avant que Nagios considère ce résultat comme fiable et passe l’objet au statut déclenchant des notifi-
cations.
check command : elle fait la liaison entre une commande et un host

4
(d) Les services
Pour superviser un service sous nagios il faut d’abord créer la commande associée à ce service. en
guise d’exemple nous allons superviser le service SSH du serveur mandicouba.net. pour ce faire
nous allons créer le fichier commande2.cfg dans notre dossier licsrt
d e f i n e command {
command name check −s s h −m a n d i c o u b a . n e t
c o m m a n d l i n e $USER1$ / c h e c k s s h m a n d i c o u b a . n e t
}

Une fois la commande crée nous allons définir l’objet service associé en créant dans notre répertoire
licsrt un fichier intitule service1.cfg possédant le contenu suivant.
define service {
s e r v i c e d e s c r i p t i o n SSH s u r N a g i o s S e r v e r
host name Nagios S er ver
check command check −s s h −m a n d i c o u b a . n e t
max check attempts 3
}

service description : L’identifiant du service. Il doit être unique pour chaque host ;
host name : La référence à l’objet host hébergeant le service à superviser.
check command : Elle permet d’indiquer la commande à exécuter pour effectuer la supervision ;
max check attempt : Le nombre de tentatives successives maximum renvoyant un résultat négatif

Vous aimerez peut-être aussi