Actuellement aucune entreprise ne peut se passer d'outils informatiques, et très souvent un réseau informatique de taille plus ou moins importante est mis en oeuvre. Le nombre des machines dans ces réseaux peut parfois devenir Extrêm-ement élevé; La maintenance ainsi que la gestion de ces parcs informatiques deviennent alors des enjeux cruciaux, d'autant plus qu'une panne du réseau peut parfois avoir des conséquences catastrophiques.
C'est pourquoi les administrateurs réseau font appel à des logiciels de surveillance et de supervision de réseaux. Ces logiciels vérifient l'état du réseau ainsi que des machines connectées et permettent à l'administrateur d'avoir une vue d'ensemble en temps réel de l'ensemble du parc informatique sous sa respon-sabilité. Il peut être aussi informé (par email, par SMS) en cas de problème. Grâce à un tel système, les délais d'interventions sont fortement réduits.
Plusieurs logiciels réalisent ces taches, comme par exemple Websense, Tivoli, Observer, HP Openview, Ciscoworks, Patrol et d'autres, mais certains sont payants.
1-La Supervision
La supervision est la surveillance du bon fonctionnement ou non d’un système ou d’une activité, Elle permet de surveiller, rapporter et alerter les fonctionnements normaux et anormaux des systèmes informatiques, la supervision utilise le protocole principale SNMP.
2-Le protocole SNMP
SNMP (Simple Network Management Protocol) est le protocole de gestion de réseaux, relativement simple. Pourtant l'ensemble de ses fonctionnalités est suffisamment puissant pour permettre la gestion des réseaux hétérogènes complexes. Il est aussi utilisé pour la supervision à distance des applications: les bases de données, les serveurs, les logiciels, etc.
L'environnement de gestion SNMP est constitué de plusieurs composantes :
Les agents : tous les éléments du réseau (matériel ou logiciel) disposent d'une entité dite agent qui répond aux requêtes de la station de supervision. ce sont des modules qui résident dans les éléments réseau. Ils vont chercher l'information de gestion comme par exemple le nombre de paquets en reçus ou transmis.
La station de supervision (appelée aussi manager) exécute les applications de gestion qui contrôlent les éléments réseaux, Physiquement la station est un poste de travail. (Serveur)
La Station NMS : c’est une station qui exécute un programme de gestion SNMP et qui contrôler les stations du réseau et de les interroger sur différentes informations, contient aussi des logiciels appelés application d'administration
réseau (NMA) permettant aux administrateurs de gérer le réseau par des commandes envoyés à l’agent de supervision
Le protocole SNMP : qui permet à la station de supervision d'aller chercher les informations sur les éléments de réseaux et de recevoir des alertes provenant de ces mêmes éléments.
La MIB (Management Information Base) est un ensemble d'informations structuré sur une entité réseau, par exemple dans un routeur, un commutateur ou un serveur. Ces informations peuvent être récupérées, ou parfois modifiées, par le protocole SNMP, c’est auprès de laquelle le manager va venir pour s'informer.
Le fichier MIB est un document texte écrit en langage ASN.1 (Abstract Syntax Notation 1) qui décrit les variables, les tables et les alarmes gérées au sein d'une MIB.
Il existe deux types de MIB: scalaire et tabulaire, Les objets scalaires définir une instance de l'objet unique tandis que les objets tabulaires définir plusieurs instances d'objets connexes regroupées dans des tables MIB.
La structure de la MIB est hiérarchique : les informations sont regroupées en arbre comme l’arbre DNS, chaque information ou objet dans l’arbre à un identifiant (OID).
Ces derniers représentent les feuilles de l'arbre, Plus précisément, un OID est une chaîne de nombres lisibles seulement à la MIB, il est comme une adresse qui identifie l'emplacement d'un élément spécifique dans l'ensemble du réseau. Sans l'OID, le message ne peut pas être traduit en une forme qui est lisible pour les humains.
Un exemple de structure de table MIB :
Le protocole SNMP est basé sur un fonctionnement asymétrique, Il est constitué d'un ensemble de requêtes, de réponses et d'un nombre limité d'alertes. Le manager envoie des requêtes à l'agent, laquelle retourne des réponses (le polling) Lorsqu'un événement anormal surgit sur l'élément réseau, l'agent envoie une alerte (trap) au manager.
SNMP utilise le protocole UDP, Le port 161 est utilisé par l'agent pour recevoir les requêtes de la station de gestion. Le port 162 est réservé pour la station de gestion pour recevoir les alertes des agents.
Format des messages SNMP
Les requêtes SNMP :
La requête Get-Request permet au Manager SNMP de demande une information à un agent SNMP.
La requête Get-Next-Request permet au Manager SNMP de demande l'information suivante à l'agent SNMP.
La requête Set-Request permet au Manager SNMP met à jour une information sur un agent SNMP.
La requête Get-Reponse L'agent SNMP répond à un get-request où a un set-request.
La requête Trap permet a L'agent SNMP l’envoie une alarme au Manager.
Et voila un schéma qui l’explique
Nagios
1-Présentation de Nagios
Nagios est un logiciel de supervision de réseau libre qui fonctionne sous Linux. Il a pour fonction de surveiller les hôtes, des services et alerter l'administrateur des états des équipements présents sur le réseau.
Bien qu'il fonctionne dans un environnement Linux, ce logiciel est capable de Superviser toutes sortes de systèmes d’exploitation (Windows, Mac OS…) et également des équipements réseaux grâce au protocole SNMP.
Cette polyvalence permet d'utiliser Nagios dans toutes sortes d'entreprises, quelque soit la topologie du réseau et les systèmes d'exploitation utilisés au sein de l'entreprise.
2- Les Caractéristiques de Nagios
Surveillance des services réseaux TCP, UDP et ICMP (SMTP, POP3, HTTP, NNTP, IMAP, etc)
Surveillance des périphériques réseaux et des ressources matériels (charge Processeur, utilisation des disques, mémoires vives, etc.)
Support de SNMP v1, v2 et v3 à l’aide de plugins
Notifications des contacts quand un hôte ou un service a un problème (via email, SMS, ou par méthode définie par l’utilisateur)
Surveillance sécurisé d’équipements à travers le firewall ou proxy
Interface web optionnelle, pour voir en temps réel, l’état du réseau, notification et historique des problèmes, fichiers log, etc.
3-Les Plugins utilisés par Nagios
Les principaux plugins utilisés par Nagios sont :
check_disk : Vérifie l'espace occupé d'un disque dur
check_http : Vérifie le service "http" d'un hôte
check_ftp : Vérifie le service "ftp" d'un hôte
check_mysql : Vérifie l'état d'une base de données MYSQL
check_nt : Vérifie différentes informations (disque dur, processeur …) sur un Windows
check_nrpe: Permet de récupérer différentes informations sur les hôtes
check_ping: Vérifie la présence d'un équipement, ainsi que sa durée de réponse
check_pop: Vérifie l'état d'un service POP (serveur mail)
check_snmp : Récupère divers informations sur un équipement grâce au SNMP
4-Le Fonctionnement de Nagios
Le logiciel Nagios utilise deux méthodes pour superviser les réseaux l’Active check ou le Passive check :
Active check : C'est le serveur Nagios qui initie la demande d'information. Ceci évite donc de configurer les postes à superviser, pour cela il utilise Le SNMP et le NRPE (Nagios Remote Plugin Executor) un démon qui permet de récupérer les informations à distance, pour l’utiliser il faut installer sur la machine distante et de l’interroger à partir du serveur Nagios, son avantage est réduire les charges sur le serveur Nagios
1-La Pré-Install de Nagios
-On peut installer Nagios sur toute distribution de linux (Redhut, Mandriva, Ubuntu ......) j’ai choisis Ubuntu pour les raisons suivants :
• Simple a utilisé
• Beaucoup de documentation sur internet
• Nagios est plus stable sur Ubuntu par rapport aux autres distributions
Un Serveur Web
Un serveur Web comme Apache pour la surveillance du réseau à partir du navigateur
2-Installation d’Apache
Les paquets nécessaires :
apache2 : Le serveur web
apache2-utils : Quelques utilitaires
php5 : Le module PHP
php5-dev : Fichiers de développements
php5-gd : La librairie pour la manipulation des images
php5-MySQL : pour les bases de données
La commande pour l’installation de ces paquets :
$ sudo apt-get install apache2 apache2utils php5 php5-dev php5-gd php5-mysql
Le test d’apache :
Pour vérifier que tout cela fonctionne, on se connecte au serveur avec son IP : http://@ IP du serveur une page par défaut s’affiche : It Works !
Installation d’apache
Création d’un utilisateur et un groupe dédié au processus Nagios (pour d'évidente raison de sécurité).
Le groupe nagcmd pour autoriser la soumission de commandes externes depuis l'interface web
L’ajout de l’adresse email de l’administrateur pour recevoir les alertes
La commande de démarrage de Nagios :
Utilisation
Pour choisir les ressources Windows (matériel ou logiciel) à surveiller, on modifier le fichier "/usr/local/nagios/etc/objects/windows.cfg" et il faut télécharger et installer le logiciel NSClient++ dans chaque station Windows
Puis aller sur : panneau de configuration, gestionnaire des services et cliquez deux fois sur le service NSClientpp et cocher « allow_service to interact with desktop »
Bonne Chance
mohameddouhaji7@gmail.com