Vous êtes sur la page 1sur 35

Mise en uvre dune solution de supervision Open Source Nagios

1




Mise en uvre dune solution de supervision
Open Source Nagios















Ralis par : Encadr Par:
- EDDARI Ayoub - Mr ABDELMOUTALEB Rachid
- HACHADI Zakaria - Mr RABBAA Najib
- AIT MASKAR Zaid
Groupe : LISRS-S1 Casa





Anne universitaire : 2012/2013

Mise en uvre dune solution de supervision Open Source Nagios


2




Il est pour nous un grand plaisir davoir eu saisir cette rare occasion
pour formuler nos profondes gratitudes et nos hautes considrations
toutes les personnes.

Nous aimerons adresser nos remerciements tout le corps enseignant de
Luniversit Hassan 1
er
Facult des Sciences et Techniques-Settat, et
spcialement nos Prof Mr ABD ELMOTALIB Rachid, et Mr RABBAA
Najib pour la qualit de leurs enseignements et leur soutien durant cette
anne fructueuses de notre formation.

Il est indispensable de remercier les gens qui ont particip beaucoup ou peu
afin de raliser ce travail pour quil soit un petit indice de la bonne
formation et la meilleure direction de notre IT Learning Campus ainsi que
les possibilits quelle offre ses lves.




Mise en uvre dune solution de supervision Open Source Nagios


3

sommaire


I Introduction 4
II historique des versions 5
III version la plus rcente 5
IV Quelques produits concurrents 6
1. Sous licence 6
2. Sous licence commerciale 6
3. comparaison de nagios avec d'autres outils 7
V Fonctionnalit 8
VI Les plugins 9
VII Architecture multisite 10
VIII Les agent 10
1. NRPE 10
2. NSCA 11
3. NSClient++ 12
IX Centreon 12
X SNPM 14
XI FAN 15
XII Configuration 15
1. Configuration nagios Ct server 15
2. Configuration des machines Windows 20
3. Configuration des machines linux/Unix 28
XIII Scurisation de Nagios 33
XIV Conclusion 35







Mise en uvre dune solution de supervision Open Source Nagios


4


Open Source Nagios


I Introduction:


Anciennement appel NetSaint, Nagios l'origine tait destin
uniquement pour les systmes Linux, mais Actuellement aucune entreprise ne
peut se passer d'outils informatiques, et trs souvent un rseau informatique de
taille plus ou moins importante est mis en uvre. Le nombre des machines
dans ces rseaux peut parfois devenir extrmement lev; La maintenance
ainsi que la gestion de ces parcs informatiques deviennent alors des enjeux
cruciaux, d'autant plus qu'une panne du rseau peut parfois avoir des
consquences catastrophiques.

C'est pourquoi les administrateurs rseau font appel des logiciels de
surveillance et de supervision de rseaux. Ces logiciels vrifient l'tat du rseau
ainsi que des machines connectes et permettent l'administrateur d'avoir une
vue d'ensemble en temps rel de l'ensemble du parc informatique sous sa
responsabilit. Il peut tre aussi inform (par email, par SMS) en cas de
problme. Grce un tel systme, les dlais d'interventions sont fortement
rduits.

Plusieurs logiciels ralisent ces taches, comme par exemple Websense,
Tivoli, Observer, HP Openview, Ciscoworks, Patrol et d'autres, mais certains
sont payants.

Dans ce domaine, un logiciel fait office de rfrence: Nagios. En effet
Nagios est trs performant et possde une prise en main assez intuitive. Il
s'installe sur une machine possdant un systme d'exploitation Linux, mais peut
superviser aussi bien des machines Linux que Windows. Cet outil permet
galement une supervision des quipements rseaux (routeur, switch), ce qui
est primordial pour l'utilisation que l'on va en faire.




Mise en uvre dune solution de supervision Open Source Nagios


5

De plus, Nagios est un outil Open source: Chaque socit peut l'adapter
comme elle lui semble. Puis, la socit ne payera pas de licence: Elle ne
payera que les frais de formation, d'installation et de maintenance.

Enfin un autre avantage: Une grosse communaut est runie autour de ce
logiciel, ce qui facilite les recherches de documentations et de rponses nos
questions.

II historique des versions:



Une premire version de Nagios est sortie en Nov 2002 . Celle-ci
apporte des changements profonds dans le logiciel. Parmi les principaux, on
trouve :
Suppression du support de la configuration en base de donnes.
Possibilit de stocker les fichiers de configuration dans des sous-rpertoires.
Support dURL de "notes" pour les htes et les services, ce qui permet par
exemple dutiliser Nagios comme rfrentiel de versions (identification des
versions des logiciels installs sur chaque hte).
Vrifications passives pour les htes, sur le mme principe que les
services.






Mise en uvre dune solution de supervision Open Source Nagios


6

III Version la plus rcente:

Nagios est actuellement sa version 3.4.3 il est plac sous la Licence
GNU GPL (General Public License) version 2. Ce qui donne la permission
lgale de le copier, le distribuer et/ou de le modifier sous certaines conditions.
La nouvelle version corrige les bugs prsents dans les versions 3.4.2 et
antrieures: Voici quelques unes de ces corrections:
Correction de la soumission de commandes externes via CGI.
Correction du groupe Apache dans les spcifications pour les RPMs.
Meilleure prise en charge de l'erreur d'criture dans les fichiers de
retention et status rsultant d'un disque plein.
Correction des alertes audio dans les CGIs.
Ajout du support des certificats d'authentification x509 dans les CGIs.

IV Quelques produits concurrents :
1) Sous licence GNU GPL
Zabbix
Big Brother
OpenNMS
Scotty
Cacti
2) Sous licence commerciale
HP OpenView
Tivoli d'IBM
Patrol de BMS Software
IBM NetView
Sun Net Manager
Big Brother
Mercury
Scom



Mise en uvre dune solution de supervision Open Source Nagios


7

3) comparaison de nagios avec d'autres outils de supervision :



Mise en uvre dune solution de supervision Open Source Nagios


8

V Fonctionnalit :

Nagios est un logiciel libre de surveillance (Monitoring) des rseaux et
systmes, trs connu dans le monde de l'entreprise et des professionnels
rseaux. Il permet de surveiller les htes et services spcifis dans son fichier
de configuration, et d'alerter les administrateurs systmes et rseaux en cas
d'vmenent (Mauvais ou Bon).
Nagios permet de :
La supervision rseau (SMTP, POP3, HTTP, NNTP, ping, etc...)
La supervision des ressources systmes (charge du processeur,
utilisation du disque, nombre d'utilisateurs connects, nombre de
process... etc...)
La supervision applicative
La notification par diffrents moyens de communication (SMS, mail,
wap...) .
L'excution de commandes manuelles ou automatiques .
La reprsentation des tats des ressources supervises, par coloration.
La cartographie du systme d'information supervis .
Le reporting.

Pour chaque lment supervis, il peut grer :
Des contacts (les personnes qui doivent tre alertes en cas de
dysfonctionnement) ou un groupe de contacts (administrateurs-unix par
exemple)
Des plages horaires
Des plugins.

Il est possible d'utiliser le systme de templates (modles prdfinis) pour
dclarer les diffrentes machines et services surveiller.
Nagios surveille les machines et leurs services rseaux grce des plugins.
Il prvient certaines personnes en fonction de l'tat certaines priodes de
temps, de certaines machines ou services.


Mise en uvre dune solution de supervision Open Source Nagios


9

Nagios repose sur un serveur web et des CGI. Il peut intgrer une base de
donnes de type MySQL ou PostgreSQL pour y stocker des informations de
supervision. Bien que conseille, la base de donne n'est pas essentielle dans
le fontionnement de Nagios et peut tre remplace par de simples fichiers
tournants, mais cette architecture doit tre limite de petites installations avec
un nombre de machines supervises restreint.
Schma standard de fonctionnement de Nagios :

VI Les plugins :
Les plugin sont des programmes excutables ou des scripts (perl, shell,
etc..) qui peuvent tre lancs depuis une ligne de commande pour tester un
hte ou un service.
Le rsultat de l'excution d'un plugin est utilis par Nagios pour dterminer le
statut des htes ou des services sur le rseau.
Quelques plugins standards :
check_http vrifie la prsence d'un serveur web
check_load vrifie la charge CPU locale
check_ping envoie une requte ping un hte
check_pop vrifie la prsence d'un serveur POP3
check_procs compte les processus locaux
check_smtp vrifie la prsence d'un serveur SMTP
check_snmp envoie une requte SNMP un hte
check_ssh vrifie la prsence d'un service SSH
check_tcp vrifie l'ouverture d'un port TCP
check_users compte le nombre d'utilisateurs sur la machine local


Mise en uvre dune solution de supervision Open Source Nagios


10
VII Architecture multisite :

Pour surveiller des machines distantes il faut qu'il y ait sur ces machines un agent
qui pourra renseigner les plugins Nagios des informations dont ils ont besoin. La mise
en place de cet agent diffre en fonction du systme d'exploitation.
VIII Les agents :
1) NRPE
NRPE (Nagios Remote Plugin Executor) est un agent de supervision qui
vous permet de rcuprer les informations distance. Son principe de
fonctionnement est simple : il suffit dinstaller le dmon sur la machine distante
et de linterroger partir du serveur Nagios.



Il est dfini comme lagent dinterrogation de type actif car cest le serveur
nagios qui va interroger la machine distante.

Mise en uvre dune solution de supervision Open Source Nagios


11

2) NSCA

NSCA est lagent de type passif pour linterrogation des machines
distantes. Il est utilis dans des cas particuliers o certains types de
matriels. Cet agent est utiliser surtout sur les alertes dite : Asynchrone. Ce
sont des alertes qui arrivent de temps en temps mais on ne sait jamais quand
alors que quasiment tout le temps lhte superviser reste silencieux. Ce que
lon veut avec cet agent, cest de ne pas charger notre serveur de supervision
avec des contrles. Dans ce cas de figure, cest notre hte supervis qui
remontera son problme quand il y en aura un.

Schma de fonctionnement:



NSCA est utilis dans les cas suivants :

Lorsque les htes contrler sont situs derrire un firewall, et ne
peuvent donc pas tre contrls directement depuis le serveur Nagios
moins de procder louverture du port de chaque machine mais ceci
engendre une lourdeur dadministration et de gros risques de scurit.
Lorsque les vnements sont asynchrones par nature (comme les traps
SNMP, les alertes de scurit, )
Lorsque votre environnement de supervision devient trop consquent.
Lors de lutilisation de larchitecture de supervision dite distribue







Mise en uvre dune solution de supervision Open Source Nagios


12

3) NSClient++

Avant de pouvoir superviser les attributs et services privs des machines
Windows, vous allez devoir installer un agent sur ces machines. Je
recommande l'utilisation de l'addon NSClient++, qui peut tre trouv sur
http://sourceforge.net/projects/nscplus.
Sans installation d'agent sur la machine Windows, Nagios serait incapable
de superviser le moindre attributs ou services privs de la machine Windows.
Lagent NSClient++ doit tre installer sur la machine Windows et utiliser
le plugin check_nt pour communiquer avec NSCLient++.

IX Centreon : une interface Nagios :

Avant dentamer le coeur du sujet, savoir le comparatif des outils, il est
ncessaire de donner une explication sur le fonctionnement de Centreon et de
son rapport Nagios car, le coeur de Centreon est bas sur Nagios.
Nagios est un ordonnanceur qui va organiser (ordonnancer) les tests de
supervision, appels contrles, sur les diffrents hosts et services cibles et
agrger les rsultats pour les mettre disposition via une interface web en
lecture seule. Nagios permet aussi de remonter des donnes de performance
(via ses plugins) quil stocke dans un norme fichier plat et qui est, par
consquent, inexploitable en ltat.
Cest sur ce constat que vient se greffer Centreon en proposant une
interface web diffrente de celle de Nagios et ajoute ainsi les fonctionnalits
suivantes :

Mise en uvre dune solution de supervision Open Source Nagios


13
Gnration via IHM de la configuration potentiellement complexe de
Nagios en mettant notamment disposition des notions de templates
dhosts, de services, de commandes, avec des possibilits dhritages
multiples.
Stockage et exploitation (graphique) des donnes de performance
(mtrologie) de Nagios via loutil open source RRDtool.
Reporting plus lisible sur ltat des hosts et des services de linfrastructure
sur diffrentes priodes : pratique pour avoir une visibilit globale de la
qualit de son infrastructure dans le temps et pratique pour fournir des
rapports visuels dans le cadre de SLAs.
Une interface ergonomique de visualisation de ltat des hosts et des
services (je la trouve plus agrable que celle de Nagios qui fournit de
base cette fonctionnalit sur sa propre IHM web).
La possibilit de piloter plusieurs Nagios distribus et dagrger leurs
donnes : cela peut tre utile sur de grosses infrastructures segmentes.
Il est donc noter quil est possible dinstaller des Nagios autonomes sur
des machines diffrentes de celle du Centreon qui collectera les donnes
(via CentCore).

un shema expliquant la relation entre les deux outils :















Mise en uvre dune solution de supervision Open Source Nagios


14
Pour rsumer, Centreon est un outil complet qui permet dajouter une
composante mtrologique un solide outil de supervision. Pratique donc pour
unifier dans un mme outil, une mme interface, tout ce qui est ncessaire aux
quipes dexploitation pour surveiller linfrastructure. A noter cependant que
lexploitation des donnes de performances ne vous permet pas de mettre en
place des graphes aussi complexes que ceux que lon peut produire avec des
outils de mtrologie plus avancs.


X) SNMP :
Le protocole SNMP fonctionne sous forme de questions-rponses entre
un serveur (dans notre cas Nagios) et des quipements rseau (htes)
(Serveurs, Switch, Hubs, Ordinateur, routeurs) ayant ce protocole install.

Le client peut mettre un message vers le serveur sans ncessiter de
rponse : le message visant alerter ladministrateur dune dfaillance (par
exemple, lespace disque dun serveur ayant dpass un seuil dfini au
pralable par le technicien).
Il peut rcuprer toutes sortes dinformations sur ltat actuel dun
quipement rseau. Ces informations sont stockes dans une base de donnes

Mise en uvre dune solution de supervision Open Source Nagios


15
arborescente appele MIB (management information base). Ce protocole nest
plus lunique moyen de supervision : en effet les logiciels de supervision
daujourdhui tendent vers lutilisation dagents propritaires afin de remplacer le
protocole SNMP et ce dans le but de fournir toujours plus dinformations
lutilisateur. Cependant le protocole SNMP reste le seul moyen de surveiller
lactivit dquipements rseaux tels que les commutateurs ou les routeurs,
tant donn que ces matriaux offrent rarement la possibilit dinstaller des
logiciels tiers.

X FAN:

Fully Automated Nagios (ou FAN) est une distribution Linux base sur
CentOS. Elle intgre plusieurs outils qui permettent de superviser son systme
dinformation : Nagios, Centreon et enfin Nagvis. Les composants sont
les suivants :
CentOS : un clone (au sens propre) de RedHat libre et gratuit
Nagios : le cur de supervision
Centreon : une extension Nagios pour faciliter la configuration
Nagvis : une extension pour avoir une partie graphique
Le principal avantage de cette distribution est le fait quelle permet de mettre en
place un serveur de supervision trs rapidement sans avoir besoin de
configurer de A Z.

XI Configuration :

4) Configuration nagios Ct server:

Si on suit les instructions, voici ce que nous obtiendrons la fin:
o Nagios et les plugins seront installs dans l'arborescence du
rpertoire /usr/local/nagios
o Nagios sera configur pour superviser quelques aspects du systme local
(charge CPU, occupation disque, etc.)
o L'interface web de Nagios sera accessible http://localhost/nagios/


Mise en uvre dune solution de supervision Open Source Nagios


16

Pr-requis :
Nous aurons besoin d'un accs root sur la machine pour quelques
passages de l'installation
Premierement install les paquets suivants sur l'installation Fedora avant
de continuer :
Apache
Compilateur GCC
librairies de dveloppement GD

en utilisant les commandes suivantes (en tant que root):
# yum install httpd
# yum install gcc
# yum install glibc glibc-common
# yum install gd gd-devel

Crez un compte utilisateur :

Passez sur le compte root :
$ su l

Crez un utilisateur nagios et attribuez lui un mot de passe :
# /usr/sbin/useradd -m nagios
# passwd nagios

Crez un groupe nagcmd pour autoriser la soumission de commandes externes
depuis l'interface web. Ajoutez la fois l'utilisateur nagios et l'utilisateur apache
ce groupe :
# /usr/sbin/groupadd nagcmd
# /usr/sbin/usermod -G nagcmd nagios
# /usr/sbin/usermod -G nagcmd apache-






Mise en uvre dune solution de supervision Open Source Nagios


17

Tlchargez Nagios et les Plugins :

Crez un rpertoire pour stocker les tlchargements :
# mkdir ~/downloads
# cd ~/downloads

Tlchargez la fois l'archive du code source de Nagios et des plugins
Nagios (visitez http://www.nagios.org/download/ pour les liens vers les
dernires versions) :
# wget http://osdn.dl.sourceforge.net/sourceforge/nagios/nagios-(version-
actuel).tar.gz
# wget http://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-
plugins-(version-actuel).tar.gz


Compilez et installez Nagios :

Extraire le code source de Nagios de l'archive :
# cd ~/downloads
# tar xzf nagios-(version).tar.gz
# cd nagios-(version)

Excutez le script de configuration de Nagios en lui passant le nom du groupe
quon vient juste de crer comme suit:
# ./configure --with-command-group=nagcmd

Compilez le code source de Nagios :
# make all

Installez les binaires, les scripts de dmarrage, les fichiers de configuration et
rglez les permissions sur le dossier des commandes externes :
# make install
# make install-init
# make install-config
# make install-commandmode


Mise en uvre dune solution de supervision Open Source Nagios


18

Personnalisation de la configuration :

Les fichiers de configuration ont t installs dans le rpertoire
/usr/local/nagios/etc. Ces fichiers d'exemple devraient suffire pour commencer
avec Nagios. Vous n'aurez qu'une chose modifier avant de pouvoir
commencer
ditez le fichier de configuration
/usr/local/nagios/etc/objects/contacts.cfg avec votre diteur de texte prfr
et changez l'adresse de courrier lectronique associe avec la dfinition de
contact nagiosadmin par celle que vous souhaitez utiliser pour recevoir les
alertes :
# vi /usr/local/nagios/etc/objects/contacts.cfg


Configuration de l'interface web :

Installez le fichier de configuration web Nagios dans le rpertoire
Apache conf.d :
# make install-webconf

Crez un compte nagiosadmin pour la connexion l'interface web de Nagios.
Souvenez-vous du mot de passe attribu ce compte - Vous en aurez besoin
plus tard :
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

Redmarrez Apache pour que les nouveaux rglages prennent effet :
# service httpd restart
Compilation et installation des Plugins Nagios :

Extraire le code source des plugins Nagios de l'archive :
# cd ~/downloads
# tar xzf nagios-plugins-(version).tar.gz
# cd nagios-plugins-(version)


Mise en uvre dune solution de supervision Open Source Nagios


19
Compilation et installation des plugins :
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make
# make install


Dmarrage de Nagios :

Ajouter Nagios la liste des services systme et dmarrer le
automatiquement au dmarrage du systme :
# chkconfig --add nagios
# chkconfig nagios on


Vrifier les exemples de fichiers de configuration de Nagios :
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

S'il n'y a pas d'erreur, dmarrer Nagios :
# service nagios start

Modifiez les rglages SELinux :

Fedora est fourni avec SELinux (Security Enhanced Linux) install et en
mode Enforcing par dfaut. Cela peut engendrer des messages Internal Server
Error quand vous essayez d'accder aux CGIs de Nagios.

Vrifiez si SELinux est en mode Enforcing :
# service nagios start

Rglez SELinux sur le mode Permissif :

# setenforce 0


Mise en uvre dune solution de supervision Open Source Nagios


20
Pour rendre le changement permanent, vous allez devoir modifier ces
rglages dans /etc/selinux/config et redmarrer.
Plutt que de passer SELinux en mode permissif ou de le dsactiver, vous
pouvez utiliser la commande suivante pour excuter les CGIs en mode SELinux
enforcing/targeted:
# chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/
# chcon -R -t httpd_sys_content_t /usr/local/nagios/share/

5) Configuration des machines Windows supervis :

Vue globale :


Superviser des attributs et services privs sur une machine Windows
requiert l'installation d'un agent sur celle-ci. Cet agent agit comme un proxy
entre les plugins Nagios qui font la supervision et le service ou l'attribut sur la
machine Windows. Sans installation d'agent sur la machine Windows, Nagios
serait incapable de superviser le moindre attributs ou services privs de la
machine Windows.
Pour cet exemple, nous allons installer l'addon NSClient++ sur la machine
Windows et utiliser le plugin check_nt pour communiquer avec NSCLient++.

tapes suivre pour pouvoir superviser une nouvelle machine Windows :

1. Procder aux pr-requis ncessaires la premire fois
2. Installez un agent de supervision sur la machine Windows
3. Crez de nouvelles dfinitions d'hte et de service pour superviser la
machine Windows
4. Redmarrez le dmon Nagios





Mise en uvre dune solution de supervision Open Source Nagios


21

Ce qui est dj fait pour nous :

Pour nous rendre la vie un peu plus facile, quelques tches de
configuration ont dj t faites :
Une dfinition de commande check_nt a t ajout au
fichier commands.cfg. Cela permet d'utiliser le plugincheck_nt pour
superviser les services Windows.
Un gabarit d'hte serveur Windows (appel windows-server) a dj t
cr dans le fichier templates.cfg. Cela permet d'ajouter de nouvelles
dfinitions d'htes Windows de faon simple.

Les fichiers de configuration mentionns ci-dessus peuvent tre trouvs
dans le rpertoire /usr/local/nagios/etc/objects/. Vous pouvez modifier les
dfinitions de ceux-ci ou en crez de nouvelles pour rpondre le mieux votre
besoin. Quoi qu'il en soit, je vous recommande d'attendre d'avoir une meilleure
connaissance de la configuration de Nagios avant de le faire. Pour le moment,
contentez-vous de suivre les directions prcises ci-dessous et vous pourrez
superviser vos machines Windows en un rien de temps.
Pr-requis :
La premire fois que vous configurez Nagios pour superviser une machine
Windows, vous avez un peu plus de travail faire. Souvenez-vous, vous n'avez
le faire que pour la *premire* machine Windows superviser.
ditez le fichier de configuration principal de Nagios :
#vi /usr/local/nagios/etc/nagios.cfg

Supprimez le caractre (#) du dbut de la ligne suivante du fichier de
configuration principal :
#cfg_file=/usr/local/nagios/etc/objects/windows.cfg

Enregistrez le fichier et quittez.

Mise en uvre dune solution de supervision Open Source Nagios


22

Installation de l'agent Windows :

Ces instructions vont vous guider au cours d'une installation simple de
NSClient++ ainsi que pour la configuration de Nagios pour superviser une
machine Windows.
1. Tlchargez la dernire version stable de NSClient++ depuis
http://sourceforge.net/projects/nscplus
2. Dzippez les fichiers de NSClient++ dans un nouveau
rpertoire C:\NSClient++
3. Ouvrez une fentre de commande et dplacez-vous dans le
rpertoire C:\NSClient++
4. Installez le service systme NSClient++ avec la commande suivante:
C:\> nsclient++ /install
Installez le module NSClient++ pour la barre des tches avec la commande
suivante :
C:\> nsclient++ SysTray
5. Ouvrez le gestionnaire des services et assurez-vous que le service
NSClientpp est autoris interagir avec le bureau (regardez sous l'onglet
'Log On' du gestionnaire de services). Cochez la case correspondante si
ce n'est dj fait :

Mise en uvre dune solution de supervision Open Source Nagios


23

6. ditez le fichier NSC.INI (situ dans le rpertoire C:\NSClient++) et
effectuez les changements suivants:
Dcommentez tous les modules lists dans la section [modules],
excepts CheckWMI.dll et RemoteConfiguration.dll
Exigez optionnellement un mot de passe des clients en remplaant
l'option password dans la section [Settings].
Dcommentez l'option allowed_hosts dans la section [Settings].
Ajoutez l'adresse IP du serveur Nagios cette ligne, ou laisser vide
pour autoriser n'importe quel hte se connecter.
Assurez-vous que l'option port dans la section [NSClient] soit
dcommente et rgle sur '12489' (le port par dfaut).

7. Dmarrez le service NSClient++ avec la commande suivante:
C:\> nsclient++ /start


Configuration de Nagios :

Il est temps maintenant de dfinir quelques dfinitions d'objets dans les
fichiers de configuration Nagios pour pouvoir superviser la nouvelle machine
Windows.
Ouvrez le fichier windows.cfg pour dition :
#vi /usr/local/nagios/etc/objects/windows.cfg

Mise en uvre dune solution de supervision Open Source Nagios


24

Ajouter une nouvelle dfinition d'hte pour la machine Windows que vous
souhaitez superviser. Si c'est la *premire* que vous supervisez, vous pouvez
simplement modifier l'exemple de dfinition d'hte dans windows.cfg.
Remplacez les champs host_name, alias, et address par les valeurs
appropries pour votre machine Windows.

define host {
use windows-server ; Inherit default values from a Windows server template (make sure
you keep this line!)
host_name winserver
alias My Windows Server
address 192.168.1.2
}

Maintenant vous pouvez ajouter quelques dfinitions de services (dans le
mme fichier de configuration) pour indiquer Nagios de superviser diffrents
aspects de la machine Windows. Si c'est votre *premire* machine Windows,
vous pouvez simplement modifier les dfinitions exemples de services
dans windows.cfg.
Ajoutez la dfinition de service suivante pour contrler la version du addon
NSClient++ tournant sur le serveur Windows. Cela devient utile quand il s'agit
de mettre jour des serveurs Windows vers une nouvelle version du addon, en
vous permettant de dterminer quelles sont les machines Windows ncessitant
une mise jour vers la dernire version de NSClient++.
define service {
use generic-service
host_name winserver
service_description NSClient++ Version
check_command check_nt!CLIENTVERSION
}

Superviser le temps coul de dernier dmarrage :
Ajoutez la dfinition de service suivante pour superviser le temps coul
depuis le dernier re/dmarrage du serveur Windows.
define service {
use generic-service
host_name winserver
service_description Uptime
check_command check_nt!UPTIME
}


Mise en uvre dune solution de supervision Open Source Nagios


25
Superviser la charge CPU
Ajoutez la dfinition de service suivante pour superviser la charge CPU du
serveur Windows et gnrer une alerte CRITICAL si la charge CPU des 5
dernires minutes est gale 90% ou plus ou une alerte WARNING si la
charge CPU des 5 dernires minutes est gale 80% ou plus.
define service {
use generic-service
host_name winserver
service_description CPU Load
check_command check_nt!CPULOAD!-l 5,80,90
}

superviser l'utilisation de la mmoire :
Ajoutez la dfinition de service suivante pour superviser l'utilisation de la
mmoire du serveur Windows et gnrer une alerte CRITICAL si l'utilisation de
la mmoire est gale 90% ou plus ou une alerte WARNING si l'utilisation de la
mmoire est gale 80% ou plus :
define service {
use generic-service
host_name winserver
service_description Memory Usage
check_command check_nt!MEMUSE!-w 80 -c 90
}
superviser l'utilisation de la disque :
une alerte CRITICAL si l'espace utilis du disque est gale 90% ou plus
ou une alerte WARNING si l'espace utilis du disque est gale 80% ou plus.
define service {
use generic-service
host_name winserver
service_description C:\ Drive Space
check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90
}
superviser l'tat du service W3SVC :
Ajoutez la dfinition de service suivante pour superviser l'tat du service
W3SVC et gnrer une alerte CRITICAL si ce service est arrt :
define service {
use generic-service
host_name winserver
service_description W3SVC
check_command check_nt!SERVICESTATE!-d SHOWALL -l W3SVC
}

Mise en uvre dune solution de supervision Open Source Nagios


26

superviser l'tat du processus :
Ajoutez la dfinition de service suivante pour superviser l'tat du processus
Explorer.exe et gnrer une alerte CRITICAL si ce processus ne tourne pas :
define service {
use generic-service
host_name winserver
service_description Explorer
check_command check_nt!PROCSTATE!-d SHOWALL -l Explorer.exe
}

Voil pour le moment. Nous avouns ajout des services simples qui
devraient tre superviss sur les machines Windows. Enregistrez le fichier de
configuration.
Protection par mot de passe :

Si vous avez prcis un mot de passe dans le fichier de configuration de
NSClient++ de la machine Windows, vous aurez besoin de modifier la dfinition
de commande check_nt pour inclure le mot de passe. Ouvrez le
fichiercommands.cfg pour dition.
#vi /usr/local/nagios/etc/commands.cfg

Modifiez la dfinition de la commande check_nt pour inclure l'argument -
s <PASSWORD> (o PASSWORD est le mot de passe prcis sur la machine
Windows) comme suit:
define command {
command_name check_nt
command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s PASSWORD -v $ARG1$
$ARG2$
}
Enregistrez le fichier de configuration .






Mise en uvre dune solution de supervision Open Source Nagios


27

Voil la machine windows a t ajoute :




Mise en uvre dune solution de supervision Open Source Nagios


28


6) Supervision des machines linux/Unix :
La supervision des machines linux se fait grce a linstallation du plugin
Check_nrpe sur nagios et linstallation du dmon NRPE sur la machine distant.
Configuration de l'hte distant:
Crer des informations de compte :
# useradd nagios
# passwd nagios

Installer des Plugins Nagios:
Extraire les plugins Nagios.
# tar xzf nagios-plugins-(version).tar.gz
# cd nagios-plugins-(version)



Mise en uvre dune solution de supervision Open Source Nagios


29

Compilation et installation des plugins :
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make
# make insall
Les autorisations sur le rpertoire des plugins et les plugins devront tre fix
ce point, alors excutez les commandes suivante :
#chown nagios.nagios /usr/local/nagios
#chown -R nagios.nagios /usr/local/nagios/libexec
#Yum install xinetd (demon qui gere les connexions internet )
#Yum install openssl-devel
Installation de dmon NRPE:
Extraire NRPE code source :
#tar xzf nrpe-(version).tar.gz
#cd nrpe-(version)
#yum install openssl-devel
Compiler l'addon nrpe :
#. / Configure
#make all

Installez le plugin NRPE :
make install-plugin
make install-daemon
make install-daemon-config
Installer le dmon NRPE comme un service sous xinetd :
#make install-xinetd

ditez le fichier /etc/xinetd.d/nrpe et ajoutez l'adresse IP du serveur de contrle de
la directive only_from.
only_from = 127.0.0.1 <nagios_ip_address>

Ajoutez l'entre suivante pour le dmon NRPE au fichier /etc/services :
nrpe 5666/tcp #NRPE

Redmarrez le service xinetd :
#service xinetd restart


Mise en uvre dune solution de supervision Open Source Nagios


30
Assurez-vous que le dmon nrpe tourne sous xinetd on tape la commande :
#Netstat at | grep nrpe

La sortie hors de cette commande devrait donner le rsultat suivant:
tcp 0 0 *: nrpe *:* LISTEN
#/usr/local/nagios/libexec/check_nrpe -H localhost
Permet de connaitre letat de nrpe si est fonctionnelle NRPE v2.8 .
#iptables -I INPUT -p tcp -m tcp --dport 5666 -j ACCEPT
Assurez-vous que le pare-feu local sur la machine permettra le dmon NRPE
pour tre accessibles partir de serveurs distants.
Enregistrer la configuration du pare-feu laide du commande :
#service iptables save
#service iptables restart

Crer une dfinition de commande:
Vous aurez besoin de crer une dfinition de commande dans l'un de vos
fichiers de configuration Nagios objet afin de pouvoir utiliser la check_nrpe plugin.
Ouvrez le fichier de l'chantillon commands.cfg pour l'dition ... #vi
/usr/local/nagios/etc/objects/commands.cfg Et ajouter la dfinition suivante dans le
fichier:

Vous tes maintenant prt lancer les services en ajoutant que doivent tre
surveills sur la machine distante l'Nagios configuration ...
Installation de check_nrpe sur nagios: Installation de check_nrpe sur nagios:
Extraire NRPE code source.
# tar xzf nrpe-2.12.tar.gz
# cd nrpe-2.12
Compiler NRPE.

# ./configure
# make all

Installez NRPE.

# make install-plugin


Mise en uvre dune solution de supervision Open Source Nagios


31
Cre un fichier dans /usr/local/nagios/etc/object/*nom-du-fichier.cfg* Pour
ajouter des service quand doit Supervis sur la machine distante Ajouter la ligne
du commande suivante dans le fichier :
/usr/local/nagios/etc/object/*nom-du-fichier.cfg*
/usr/local/nagios/etc/nagios.cfg

Cre les services de supervision dans ce fichier :











Mise en uvre dune solution de supervision Open Source Nagios


32
Redmarrage de nagios.
Les machines linux(Fedora) et Windows ont t ajoute :







Mise en uvre dune solution de supervision Open Source Nagios


33


XII Scurisation de Nagios :

Dans un environnement de production, il est fortement dconseill de
dployer un systme de supervision si la Dans un environnement de
production, il est fortement dconseill de dployer un systme de supervision
si la scurit de ce dernier ne doit pas tre assure. Cela augmenterait les
risques de compromission du systme scurit de ce dernier ne doit pas tre
assure. Cela augmenterait les risques de compromission du systme
d'information. Par dfaut, les changes entre les serveurs Nagios et les
machines superviser tant en clair sur d'information. Par dfaut, les changes
entre les serveurs Nagios et les machines superviser tant en clair sur le
rseau, imaginez un event handler que vous avez mis en place pour
redmarrer un service en cas d'un tat le rseau, imaginez un event handler
que vous avez mis en place pour redmarrer un service en cas d'un tat
Warning par exemple.

Mise en uvre dune solution de supervision Open Source Nagios


34


Un pirate peut se mettre entre un serveur Nagios et une machine
supervise, et envoyer des codes de retour Un pirate peut se mettre entre un
serveur Nagios et une machine supervise, et envoyer des codes de retour
rrons au serveur. Celui ci passera son temps redmarrer le service, ce qui
est problmatique.

Il est donc conseill pour le dploiement de Nagios, de respecter un
ensemble de bonnes pratiques (Best practice) et selon les schmas ci-dessus
pour assurer sa scurisation. Voici quelques unes de ces bonnes practice) et
selon les schmas ci-dessus pour assurer sa scurisation. Voici quelques unes
de ces bonnes pratiques:
Utilisation des serveurs de supervision ddis
Eviter d'excuter Nagios sous l'identit root
S'assurer que seul l'utilisateur nagios est capable de lire et crire dans
le rpertoire des rsultats
Exiger l'authentification pour l'accs aux CGI
Cacher les informations sensives avec les macros $USERSn$
Scuriser les accs aux agents (NRPE, NSCA, etc.) distants
Scuriser les canaux de communication entre le serveur Nagios et les
agents de communication, par exemple en Scuriser les canaux de
communication entre le serveur Nagios et les agents de communication,
par exemple en cryptant ces communications.


Mise en uvre dune solution de supervision Open Source Nagios


35
XIII Conclusion :

Les rseaux sont devenus un pilier de lconomie mondiale. Les besoins et
les enjeux de ces technologies ne cessant daugmenter, la supervision est alors
apparue pour apporter une garantie de fiabilit, de ractivit et dadquation
des moyens mis en place. Nanmoins la grande disparit de ces technologies
de rseau pose un certain nombre de problmes : comment superviser toutes
ces technologies, comment rcuprer les informations, etc.

Les organismes de normalisations ont t les premiers apporter une
rponse en dfinissant un format commun des donnes, un modle
dadministration pour les adresser et des protocoles pour les communiquer. La
mise en place dune procdure de supervision de rseaux passe alors
forcement par lapplication concrte dune de ces normes, sans laquelle il est
impossible dobtenir une relle plus valu sur ladministration de son reseau. Le
seul vritable standard actuel du monde IP labore a partir de ces normes est
le protocole SNMP. Il constitue la base de la majorit des plateformes
logicielles de supervision rseau dont Nagios, une des plus populaires.

Nagios russit, grce son exploitation intelligente des capacits des
technologies Unix, proposer une plate-forme de supervision dune grande
variete de services, complte et facilement modulable.

Elle rpond aux besoins de supervision de nombreux services bases sur
des protocoles diffrents et a su prsenter des fonctionnalits adaptes aux
attentes concrtes de la supervision comme laccessibilit et ses interactions
distance, lautomatisation des remontes dalarmes jusquaux administrateurs,
ou encore les comptes-rendus et historiques graphiques des vnements du
rseau.