Upload
haner-koko
View
232
Download
0
Embed Size (px)
Citation preview
8/12/2019 Projet Nagios
1/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:
- EDDARIAyoub - Mr ABDELMOUTALEB Rachid
- HACHADIZakaria -Mr RABBAA Najib
- AIT MASKARZaid
Groupe : LISRS-S1 Casa
Anne universitaire : 2012/2013
8/12/2019 Projet Nagios
2/35
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 1erFacult 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 cetteanne 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.
8/12/2019 Projet Nagios
3/35
Mise en uvre dune solution de supervision Open Source Nagios
3
sommaire
I Introduction 4II historique des versions 5III version la plus rcente 5IV Quelques produits concurrents 6
1. Sous licence 62. Sous licence commerciale 63. comparaison de nagios avec d'autres outils 7
V Fonctionnalit 8VI Les plugins 9VII Architecture multisite 10VIII Les agent 10
1. NRPE 102. NSCA 113. NSClient++ 12
IXCentreon 12X SNPM 14XI FAN 15XII Configuration 15
1. Configuration nagios Ct server 152. Configuration des machines Windows 203. Configuration des machines linux/Unix 28
XIII Scurisation de Nagios 33XIV Conclusion 35
8/12/2019 Projet Nagios
4/35
Mise en uvre dune solution de supervision Open Source Nagios
4
Open Source Nagios
I Introduction:
Anciennement appel NetSaint, Nagios l'origine tait destinuniquement pour les systmes Linux, maisActuellement aucune entreprise nepeut se passer d'outils informatiques, et trs souvent un rseau informatique detaille plus ou moins importante est mis en uvre. Le nombre des machinesdans ces rseaux peut parfois devenir extrmement lev; La maintenance
ainsi que la gestion de ces parcs informatiques deviennent alors des enjeuxcruciaux, d'autant plus qu'une panne du rseau peut parfois avoir desconsquences catastrophiques.
C'est pourquoi les administrateurs rseau font appel des logiciels desurveillance et de supervision de rseaux. Ces logiciels vrifient l'tat du rseauainsi que des machines connectes et permettent l'administrateur d'avoir unevue d'ensemble en temps rel de l'ensemble du parc informatique sous saresponsabilit. Il peut tre aussi inform (par email, par SMS) en cas de
problme. Grce un tel systme, les dlais d'interventions sont fortementrduits.
Plusieurs logiciels ralisent ces taches, comme par exemple Websense,Tivoli, Observer, HP Openview, Ciscoworks, Patrol et d'autres, mais certainssont payants.
Dans ce domaine, un logiciel fait office de rfrence: Nagios. En effetNagios est trs performant et possde une prise en main assez intuitive. Ils'installe sur une machine possdant un systme d'exploitation Linux, mais peutsuperviser aussi bien des machines Linux que Windows. Cet outil permetgalement une supervision des quipements rseaux (routeur, switch), ce quiest primordial pour l'utilisation que l'on va en faire.
8/12/2019 Projet Nagios
5/35
Mise en uvre dune solution de supervision Open Source Nagios
5
De plus, Nagios est un outil Open source: Chaque socit peut l'adaptercomme elle lui semble. Puis, la socit ne payera pas de licence: Elle nepayera que les frais de formation, d'installation et de maintenance.
Enfin un autre avantage: Une grosse communaut est runie autour de celogiciel, ce qui facilite les recherches de documentations et de rponses nosquestions.
II historique des versions:
Une premire version de Nagios est sortie en Nov 2002 . Celle-ciapporte des changements profonds dans le logiciel. Parmi les principaux, ontrouve :
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 parexemple dutiliser Nagios comme rfrentiel de versions (identification desversions des logiciels installs sur chaque hte).
Vrifications passives pour les htes, sur le mme principe que lesservices.
8/12/2019 Projet Nagios
6/35
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 LicenceGNU GPL (General Public License) version 2. Ce qui donne la permissionlgale 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 etantrieures: 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 deretention 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
8/12/2019 Projet Nagios
7/35
Mise en uvre dune solution de supervision Open Source Nagios
7
3) comparaison de nagios avec d'autres outils de supervision :
8/12/2019 Projet Nagios
8/35
Mise en uvre dune solution de supervision Open Source Nagios
8
V Fonctionnalit :
Nagios est un logiciel libre de surveillance (Monitoring) des rseaux etsystmes, trs connu dans le monde de l'entreprise et des professionnelsrseaux. Il permet de surveiller les htes et services spcifis dans son fichierde configuration, et d'alerter lesadministrateurs systmes et rseaux en casd'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 deprocess... 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 dedysfonctionnement) ou un groupe de contacts (administrateurs-unix parexemple)
Des plages horaires Des plugins.
Il est possible d'utiliser le systme de templates (modles prdfinis) pourdclarer 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 detemps, de certaines machines ou services.
8/12/2019 Projet Nagios
9/35
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 dedonnes de type MySQLou PostgreSQLpour y stocker des informations desupervision. Bien que conseille, la base de donne n'est pas essentielle dans
le fontionnement de Nagios et peut tre remplace par de simples fichierstournants, mais cette architecture doit tre limite de petites installations avecun nombre de machines supervises restreint.
Schma standard de fonctionnement de Nagios :
VILes plugins :
Les plugin sont des programmes excutables ou des scripts (perl, shell,etc..) qui peuvent tre lancs depuis une ligne de commande pour tester unhte ou un service.Le rsultat de l'excution d'un plugin est utilis par Nagios pour dterminer lestatut des htes ou des services sur le rseau.
Quelques plugins standards :
check_http vrifie la prsence d'un serveur webcheck_load vrifie la charge CPU localecheck_ping envoie une requte ping un htecheck_pop vrifie la prsence d'un serveur POP3check_procs compte les processus locauxcheck_smtp vrifie la prsence d'un serveur SMTPcheck_snmp envoie une requte SNMP un htecheck_ssh vrifie la prsence d'un service SSHcheck_tcp vrifie l'ouverture d'un port TCPcheck_users compte le nombre d'utilisateurs sur la machine local
8/12/2019 Projet Nagios
10/35
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 miseen place de cet agent diffre en fonction du systme d'exploitation.
VIIILes agents :
1) NRPE
NRPE (Nagios Remote Plugin Executor) est un agent de supervision quivous permet de rcuprer les informations distance. Son principe de
fonctionnement est simple : il suffit dinstaller le dmon sur la machine distanteet de linterroger partir du serveurNagios.
Il est dfini comme lagent dinterrogation de type actif car cest le serveurnagios qui va interroger la machine distante.
8/12/2019 Projet Nagios
11/35
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 dematriels. Cet agent est utiliser surtout sur les alertes dite : Asynchrone. Cesont des alertes qui arrivent de temps en temps mais on ne sait jamais quandalors que quasiment tout le temps lhte superviser reste silencieux. Ce quelon veut avec cet agent, cest de ne pas charger notre serveur de supervisionavec des contrles. Dans ce cas de figure, cest notre hte supervis quiremontera 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 nepeuvent donc pas tre contrls directement depuis le serveur Nagios moins de procder louverture du port de chaque machine mais ceciengendre une lourdeur dadministration et de gros risques de scurit.
Lorsque les vnements sont asynchrones par nature (comme les trapsSNMP, les alertes de scurit, )
Lorsque votre environnement de supervision devient trop consquent. Lors de lutilisation de larchitecture de supervision dite distribue
8/12/2019 Projet Nagios
12/35
Mise en uvre dune solution de supervision Open Source Nagios
12
3) NSClient++
Avant de pouvoir superviser les attributs et services privs des machinesWindows, vous allez devoir installer un agent sur ces machines. Jerecommande l'utilisation de l'addon NSClient++, qui peut tre trouv surhttp://sourceforge.net/projects/nscplus.
Sans installation d'agent sur la machine Windows, Nagios serait incapablede superviser le moindre attributs ou services privs de la machine Windows.
Lagent NSClient++ doit tre installer sur la machine Windows et utiliserle plugin check_nt pour communiquer avec NSCLient++.
IXCentreon : une interface Nagios :
Avant dentamer le coeur du sujet, savoir le comparatif des outils, il estncessaire 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 etagrger les rsultats pour les mettre disposition via une interface web enlecture seule. Nagios permet aussi de remonter des donnes de performance(via ses plugins) quil stocke dans un norme fichier plat et qui est, parconsquent, inexploitable en ltat.
Cest sur ce constat que vient se grefferCentreon en proposant une
interface web diffrente de celle de Nagios et ajoute ainsi les fonctionnalitssuivantes :
http://sourceforge.net/projects/nscplushttp://www.nagios.org/http://www.centreon.com/http://www.centreon.com/http://www.centreon.com/http://www.nagios.org/http://sourceforge.net/projects/nscplus8/12/2019 Projet Nagios
13/35
Mise en uvre dune solution de supervision Open Source Nagios
13
Gnration via IHM de la configuration potentiellement complexe deNagios en mettant notamment disposition des notions de templatesdhosts, de services, de commandes, avec des possibilits dhritagesmultiples.
Stockage et exploitation (graphique) des donnes de performance
(mtrologie) de Nagios via loutil open sourceRRDtool. Reporting plus lisible sur ltat des hosts et des services de linfrastructure
sur diffrentes priodes : pratique pour avoir une visibilit globale de laqualit de son infrastructure dans le temps et pratique pour fournir desrapports visuels dans le cadre de SLAs.
Une interface ergonomique de visualisation de ltat des hosts et desservices (je la trouve plus agrable que celle de Nagios qui fournit debase 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 surdes machines diffrentes de celle du Centreon qui collectera les donnes(via CentCore).
un shema expliquant la relation entre les deux outils :
http://oss.oetiker.ch/rrdtool/http://oss.oetiker.ch/rrdtool/http://oss.oetiker.ch/rrdtool/http://oss.oetiker.ch/rrdtool/8/12/2019 Projet Nagios
14/35
8/12/2019 Projet Nagios
15/35
Mise en uvre dune solution de supervision Open Source Nagios
15
arborescente appele MIB (management information base). Ce protocole nestplus lunique moyen de supervision : en effet les logiciels de supervisiondaujourdhui tendent vers lutilisation dagents propritaires afin de remplacer leprotocole SNMP et ce dans le but de fournir toujours plus dinformations lutilisateur. Cependant leprotocole 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 deslogiciels tiers.
X FAN:
Fully Automated Nagios (ou FAN) est une distribution Linux base surCentOS. Elle intgre plusieurs outils qui permettent de superviser son systmedinformation : 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 enplace un serveur de supervision trs rapidement sans avoir besoin deconfigurer 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 durpertoire /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/
8/12/2019 Projet Nagios
16/35
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 avantde continuer :
ApacheCompilateur GCClibrairies de dveloppementGD
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-
http://www.boutell.com/gd/http://www.boutell.com/gd/8/12/2019 Projet Nagios
17/35
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 pluginsNagios (visitezhttp://www.nagios.org/download/pour les liens vers lesdernires 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 groupequon vient juste de crer commesuit:
#./configure --with-command-group=nagcmd
Compilez le code source de Nagios :#make all
Installez les binaires, les scripts de dmarrage, les fichiers de configuration etrglez les permissions sur le dossier des commandes externes :
#make install
#make install-init
#make install-config
#make install-commandmode
http://www.nagios.org/download/http://www.nagios.org/download/http://www.nagios.org/download/http://osdn.dl.sourceforge.net/sourceforge/nagios/nagios-(versionhttp://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-(version-actuel).tar.gzhttp://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-(version-actuel).tar.gzhttp://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-(version-actuel).tar.gzhttp://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-(version-actuel).tar.gzhttp://osdn.dl.sourceforge.net/sourceforge/nagios/nagios-(versionhttp://www.nagios.org/download/8/12/2019 Projet Nagios
18/35
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 commenceravec Nagios. Vous n'aurez qu'une chose modifier avant de pouvoircommencer
ditez le fichier de configuration/usr/local/nagios/etc/objects/contacts.cfg avec votre diteur de texte prfret changez l'adresse de courrier lectronique associe avec la dfinition decontact nagiosadmin par celle que vous souhaitez utiliser pour recevoir lesalertes :
#vi /usr/local/nagios/etc/objects/contacts.cfg
Configuration de l'interface web :
Installez le fichier de configuration web Nagios dans le rpertoireApache 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 besoinplus 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)
http://doc.monitoring-fr.org/3_0/html/configuringnagios-config.htmlhttp://doc.monitoring-fr.org/3_0/html/configuringnagios-config.html8/12/2019 Projet Nagios
19/35
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 leautomatiquement 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 enmode Enforcing par dfaut. Cela peut engendrer des messages Internal ServerError 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
8/12/2019 Projet Nagios
20/35
Mise en uvre dune solution de supervision Open Source Nagios
20
Pour rendre le changement permanent, vous allez devoir modifier cesrglages dans/etc/selinux/configet redmarrer.
Plutt que de passer SELinux en mode permissif ou de le dsactiver, vouspouvez 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 Windowsrequiert l'installation d'un agent sur celle-ci. Cet agent agit comme un proxyentre les plugins Nagios qui font la supervision et le service ou l'attribut sur lamachine Windows. Sans installation d'agent sur la machine Windows, Nagiosserait incapable de superviser le moindre attributs ou services privs de la
machine Windows.
Pour cet exemple, nous allons installer l'addonNSClient++sur la machineWindows et utiliser le plugin check_ntpour 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 lamachine Windows
4. Redmarrez le dmon Nagios
http://sourceforge.net/projects/nscplushttp://sourceforge.net/projects/nscplushttp://sourceforge.net/projects/nscplushttp://sourceforge.net/projects/nscplus8/12/2019 Projet Nagios
21/35
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_nta t ajout au
fichier commands.cfg. Cela permet d'utiliser le plugincheck_ntpoursuperviser les services Windows.
Un gabarit d'hte serveur Windows (appel windows-server) a dj tcr dans le fichier templates.cfg. Cela permet d'ajouter de nouvellesdfinitions d'htes Windows de faon simple.
Les fichiers de configuration mentionns ci-dessus peuvent tre trouvsdans le rpertoire/usr/local/nagios/etc/objects/. Vous pouvez modifier lesdfinitions de ceux-ci ou en crez de nouvelles pour rpondre le mieux votrebesoin. Quoi qu'il en soit, je vous recommande d'attendre d'avoir une meilleureconnaissance de la configuration de Nagios avant de le faire. Pour le moment,contentez-vous de suivre les directions prcises ci-dessous et vous pourrezsuperviser 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 deconfiguration principal :
#cfg_file=/usr/local/nagios/etc/objects/windows.cfg
Enregistrez le fichier et quittez.
8/12/2019 Projet Nagios
22/35
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 unemachine Windows.
1. Tlchargez la dernire version stable de NSClient++ depuishttp://sourceforge.net/projects/nscplus
2. Dzippez les fichiers de NSClient++ dans un nouveaurpertoire C:\NSClient++
3. Ouvrez une fentre de commande et dplacez-vous dans lerpertoire 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 commandesuivante :
C:\> nsclient++ SysTray
5. Ouvrez le gestionnaire des services et assurez-vous que le serviceNSClientpp 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 :
http://sourceforge.net/projects/nscplushttp://sourceforge.net/projects/nscplus8/12/2019 Projet Nagios
23/35
Mise en uvre dune solution de supervision Open Source Nagios
23
6. ditez le fichier NSC.INI(situ dans le rpertoire C:\NSClient++) eteffectuez les changements suivants:
Dcommentez tous les modules lists dans la section [modules],excepts CheckWMI.dllet RemoteConfiguration.dll
Exigez optionnellement un mot de passe des clients en remplaantl'option passworddans la section [Settings].
Dcommentez l'option allowed_hostsdans la section [Settings].Ajoutez l'adresse IP du serveur Nagios cette ligne, ou laisser videpour autoriser n'importe quel hte se connecter.
Assurez-vous que l'option portdans la section [NSClient] soitdcommente 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 quelquesdfinitions d'objets dans lesfichiers de configuration Nagios pour pouvoir superviser la nouvelle machineWindows.
Ouvrez le fichier windows.cfgpour dition :#vi /usr/local/nagios/etc/objects/windows.cfg
http://doc.monitoring-fr.org/3_0/html/configuringnagios-objectdefinitions.htmlhttp://doc.monitoring-fr.org/3_0/html/configuringnagios-objectdefinitions.html8/12/2019 Projet Nagios
24/35
Mise en uvre dune solution de supervision Open Source Nagios
24
Ajouter une nouvelle dfinition d'htepour la machine Windows que voussouhaitez superviser. Si c'est la *premire* que vous supervisez, vous pouvezsimplement modifier l'exemple de dfinition d'hte dans windows.cfg.
Remplacez les champs host_name, alias, et addresspar les valeursappropries 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 lemme fichier de configuration) pour indiquer Nagios de superviser diffrentsaspects de la machine Windows. Si c'est votre *premire* machine Windows,vous pouvez simplement modifier les dfinitions exemples de servicesdans windows.cfg.
Ajoutez la dfinition de service suivante pour contrler la version du addonNSClient++ tournant sur le serveur Windows. Cela devient utile quand il s'agitde mettre jour des serveurs Windows vers une nouvelle version du addon, envous permettant de dterminer quelles sont les machines Windows ncessitantune 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 couldepuis le dernier re/dmarrage du serveur Windows.
define service {
use generic-service
host_name winserver
service_description Uptime
check_command check_nt!UPTIME
}
http://doc.monitoring-fr.org/3_0/html/configuringnagios-objectdefinitions.html#configuringnagios-objectdefinitions-hosthttp://doc.monitoring-fr.org/3_0/html/configuringnagios-objectdefinitions.html#configuringnagios-objectdefinitions-hosthttp://doc.monitoring-fr.org/3_0/html/configuringnagios-objectdefinitions.html#configuringnagios-objectdefinitions-hosthttp://doc.monitoring-fr.org/3_0/html/configuringnagios-objectdefinitions.html#configuringnagios-objectdefinitions-host8/12/2019 Projet Nagios
25/35
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 duserveur Windows et gnrer une alerte CRITICAL si la charge CPU des 5dernires 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 lammoire du serveur Windows et gnrer une alerte CRITICAL si l'utilisation dela mmoire est gale 90% ou plus ou une alerte WARNING si l'utilisation de lammoire 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 plusou 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 Spacecheck_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 serviceW3SVC et gnrer une alerte CRITICAL si ce service est arrt :
define service {
use generic-service
host_name winserver
service_description W3SVCcheck_command check_nt!SERVICESTATE!-d SHOWALL -l W3SVC
}
8/12/2019 Projet Nagios
26/35
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 deconfiguration.
Protection par mot de passe :
Si vous avez prcis un mot de passe dans le fichier de configuration deNSClient++ de la machine Windows, vous aurez besoin de modifier la dfinitionde commande check_ntpour inclure le mot de passe. Ouvrez lefichiercommands.cfgpour dition.
#vi /usr/local/nagios/etc/commands.cfg
Modifiez la dfinition de la commande check_ntpour inclure l'argument -s (o PASSWORD est le mot de passe prcis sur la machineWindows) 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.
8/12/2019 Projet Nagios
27/35
Mise en uvre dune solution de supervision Open Source Nagios
27
Voil la machine windows a t ajoute :
8/12/2019 Projet Nagios
28/35
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 pluginCheck_nrpe sur nagios et linstallation du dmon NRPE surla 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)
8/12/2019 Projet Nagios
29/35
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 insallLes 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 dela directive only_from.
only_from = 127.0.0.1
Ajoutez l'entre suivante pour le dmon NRPE au fichier /etc/services :
nrpe 5666/tcp #NRPE
Redmarrez le service xinetd :
#service xinetd restart
8/12/2019 Projet Nagios
30/35
Mise en uvre dune solution de supervision Open Source Nagios
30
Assurez-vous que le dmon nrpe tourne sous xinetd on tape la commande :
#Netstatat | 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 NRPEpour 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 vosfichiers 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 lefichier:
Vous tes maintenant prt lancer les services en ajoutant que doivent tresurveills 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
8/12/2019 Projet Nagios
31/35
Mise en uvre dune solution de supervision Open Source Nagios
31
Cre un fichier dans /usr/local/nagios/etc/object/*nom-du-fichier.cfg* Pourajouter des service quand doit Supervis sur la machine distante Ajouter la lignedu 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 :
8/12/2019 Projet Nagios
32/35
Mise en uvre dune solution de supervision Open Source Nagios
32
Redmarrage de nagios.
Les machines linux(Fedora) et Windows ont t ajoute :
8/12/2019 Projet Nagios
33/35
Mise en uvre dune solution de supervision Open Source Nagios
33
XII Scurisation de Nagios :
Dans un environnement de production, il est fortement dconseill dedployer un systme de supervision si la Dans un environnement deproduction, il est fortement dconseill de dployer un systme de supervisionsi 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 treassure. Cela augmenterait les risques de compromission du systmed'information. Par dfaut, les changes entre les serveurs Nagios et lesmachines superviser tant en clair sur d'information. Par dfaut, les changesentre les serveurs Nagios et les machines superviser tant en clair sur lerseau, imaginez un event handler que vous avez mis en place pourredmarrer un service en cas d'un tat le rseau, imaginez un event handlerque vous avez mis en place pour redmarrer un service en cas d'un tatWarningpar exemple.
8/12/2019 Projet Nagios
34/35
Mise en uvre dune solution de supervision Open Source Nagios
34
Un pirate peut se mettre entre un serveur Nagios et une machinesupervise, et envoyer des codes de retour Un pirate peut se mettre entre unserveur Nagios et une machine supervise, et envoyer des codes de retourrrons 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 unensemble de bonnes pratiques (Best practice) et selon les schmas ci-dessuspour assurer sa scurisation. Voici quelques unes de ces bonnes practice) etselon les schmas ci-dessus pour assurer sa scurisation. Voici quelques unesde ces bonnes pratiques:
Utilisation des serveurs de supervision ddis Eviter d'excuter Nagios sous l'identit root S'assurer que seul l'utilisateur nagiosest 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.
8/12/2019 Projet Nagios
35/35
Mise en uvre dune solution de supervision Open Source Nagios
XIII Conclusion :
Les rseaux sont devenus un pilier de lconomie mondiale. Les besoins etles enjeux de ces technologies ne cessant daugmenter, la supervision est alorsapparue pour apporter une garantie de fiabilit, de ractivit et dadquationdes moyens mis en place. Nanmoins la grande disparit de ces technologiesde rseau pose un certain nombre de problmes : comment superviser toutesces technologies, comment rcuprer les informations, etc.
Les organismes de normalisations ont t les premiers apporter unerponse en dfinissant un format commun des donnes, un modledadministration pour lesadresser et des protocoles pour les communiquer. Lamise en place dune procdure de supervision de rseaux passe alors
forcement par lapplication concrte dune de ces normes, sans laquelle il estimpossible dobtenir une relle plus valu sur ladministration de son reseau. Leseul vritable standard actuel du monde IP labore a partir de ces normes estle protocole SNMP. Il constitue la base de la majorit des plateformeslogicielles de supervision rseau dont Nagios, une des plus populaires.
Nagios russit, grce son exploitation intelligente des capacits destechnologies Unix, proposer une plate-forme de supervision dune grandevariete de services, complte et facilement modulable.
Elle rpond aux besoins de supervision de nombreux services bases surdes protocoles diffrents et a su prsenter des fonctionnalits adaptes auxattentes concrtes de la supervision comme laccessibilitet ses interactions distance, lautomatisation des remontesdalarmes jusquaux administrateurs,ou encore les comptes-rendus et historiques graphiques des vnements durseau.