Vous êtes sur la page 1sur 7

Simple Network Management Protocole en abrégé SNMP signifie en français Protocole Simple

de Gestion de Réseau c’est un protocole de communication qui permet aux administrateur


réseaux de gérer les équipements du réseau, de superviser, et de diagnostiquer des problèmes
réseaux matériels et distants. Il utilise le port UDP 161 et UDP 162.

Architecture SNMP :

Les systèmes de gestion du réseaux SNMP sont basés sur trois éléments principaux :

Un superviseur,

Des Nœud (Nodes),

Des agents.

Un serveur : Le synonyme manager dans la terminologie SNMP est plus souvent employer
superviseur.

Le superviseur est la console qui permet à l’administrateur réseaux d’exécuter des requêtes de
gestion SNMP.

C’est un client SNMP qui obtient des informations d’un serveur (ou équipement a gérer)

Agent et Nœud :

Les agents sont des entités qui se trouvent au niveau de chaque interface, connectant au réseau
l’équipement géré (noeud) et permettant de récupérer des informations sur différents objets.

Les équipements gérés tels que des routeurs ou des commutateurs, mais aussi des serveurs et
des matériels spécifiques des centres de données remplissent le rôle de serveur SNMP
(UDP161/UDP162).

Objet OID :

Les commutateurs, les routeurs, les postes de travails, les serveurs (virtuels comme physiques)
sont des exemples d’équipement contenant d’objets gérable.

Ces objets gérables peuvent être des informations matérielles, des paramètres de
configurations, des statistiques de performance et d’autre objets qui sont directement liés au
comportement en cours de l’équipement en question.

Ces objets sont classés dans une sorte de base de données appelée MIB (Management
Information Base). SNMP permet le dialogue entre le superviseur et les agents afin de récupérer
ou recueillir les objets souhaiter dans MIB.

Concrètement, dans le cadre d’un réseau, SNMP est utilisé :

 Pour administrer les équipements


 Pour surveiller le comportement des équipements
Il suscite des menaces de sécurité selon la version déployée. Il est déconseillé de l’utiliser dans
un réseau non contrôlé.

Il s’implémente d’une part sur le matériel à gérer et, d’autre part, avec une solution de gestion tel
qu’un NMS.

SNMP peut être utilisé de deux manières distinctes : le polling et les traps.

Polling

Le polling consiste simplement à envoyer une requête à intervalles réguliers pour obtenir une
valeur particulière. Cette technique est appelée “vérification active”.

On peut vérifier avec un programme ou un script si des valeurs sont correctes. Si la requête
échoue, il est possible qu’il y ait un problème avec le périphérique. Cependant, vu que SNMP
s’appuie sur UDP, il est conseillé de réitérer la requête pour confirmer le problème.

Traps

Les traps consistent à faire de la vérification passive ; en gros, on configure l’agent SNMP pour
qu’il contacte un autre agent SNMP en cas de problème. C’est-à-dire que l’on peut configurer un
périphérique réseau (comme un routeur) pour qu’il envoie un trap SNMP lors de certains
événements.

Par exemple, le routeur peut envoyer un trap lorsqu’il détecte que la ligne est coupée (down).
Quand un événement trap apparaît, l’agent sur le périphérique va envoyer le trap vers une
destination pré-configurée communément appelé trap host.

Le trap host possède son propre agent SNMP qui va accepter et traiter les traps lorsqu’ils
arrivent. Le traitement des traps est effectué par des trap “handlers”. Le “handler” peut faire ce
qui est approprié pour répondre au trap, comme envoyer un courriel d’alerte ou n’importe quel
autre acte.

Etudes des outils de monitoring :

Le monitoring aussi appeler supervision réseaux est une procéder de surveillance qui permet de
contrôler et de vérifier le bon fonctionnement d’une structure de parc informatique.

sC’est un outil de travail indispensable et vital pour toute entreprise qui souhaite optimiser la
disponibilité et la performance de ses installations et de ses environnements réseau. Serveur
internet, machine virtuelle, datacenter, réseau local, firewall, VoIP-SIP, bande passante,
applications, cloud computing.
Le monitoring consiste essentiellement à s’assurer que le flux de données dans le réseau reste
suffisamment important, et à remédier de manière proactive aux problèmes affectant les
performances et la sécurité de l’ensemble du serveur.

On distingue 6 types d’activités de monitoring réseau :

1. Le monitoring de disponibilité : qui assure la disponibilité réelle des composants


hardware et software d’un réseau.
2. Le monitoring de l’expérience utilisateur : qui améliore le confort de l’utilisateur en
surveillant le flux échangé avec le système.
3. Le monitoring des temps de réponse : qui mesure les temps de réponse aux requêtes
des utilisateurs sur les applications.
4. Le monitoring des activités métier : qui analyse les données associées à des processus
d'entreprise pour un meilleur avantage concurrentiel.
5. Le monitoring des activités techniques : qui offre une vision détaillée des performances
et de leurs variations pour chaque composante d’un réseau.
6. Le monitoring de sécurité des données : qui garantit la protection et la sécurité des
fichiers, des données et des profils d’informations personnelles

En temps réel et en temps différé via des protocoles et les formats de données SNMP, Syslog ou
COPS, les outils de monitoring réseau et solutions de supervision permettent alors d’éviter des
déconvenues en détectant rapidement les pertes de capacité du système d’information de
l’entreprise. Le manager ou l'opérateur réseau reçoit alors des alertes (souvent par e-mail ou
sms) en cas de surcharges ou de lenteurs et peut ainsi intervenir avec agilité directement via
l’interface du network monitor.

Que sa soit pour une PME ou pour une multinationale, une surveillance réseau efficace passe
nécessairement par des logiciels de monitoring performants :

 Qui effectuent des analyses et des diagnostics réseau constants ;


 Veillent en permanence au bon fonctionnement des processus sur le réseau ;
 Centralisent les données clés à monitorer et l'information de la santé du réseau ;
 Et assurent l’envoi d’alertes aux agents de l'équipe informatique dès qu'une anomalie est
détectée.

Il existe sur le marché de nombreux outils de surveillance flexibles et disponibles au


téléchargement dans toutes les langues, qu’il s’agisse d’éditeurs de logiciels de monitoring open
source (souvent gratuits) ous propriétaires (payants sous licence).

Les logiciels de monitoring open source

Beaucoup d'entreprises au budget informatique limité préfèrent opter pour des logiciels de
monitoring open source lorsqu’elles possèdent les compétences nécessaires en interne. Elles se
tournent ainsi simplement vers des solutions gratuites ou peu onéreuses comme Centreon,
Nagios, Zabbix, Cacti, Shinken ou autres forks.

Avantages :
 Coûts d’acquisition limités ou gratuits.
 Indépendance des fournisseurs.
 Respect des standards.
 Développements additionnels peu coûteux et riches.
 Communauté active derrière le produit.

Inconvénients :

 Efforts d'implémentation et de configuration plus intenses que la moyenne.


 Gamme souvent limitée des fonctionnalités proposées.
 Support payants.

Les logiciels de monitoring propriétaires (payants)

À côté des outils de visualisation et de monitoring open source, les solutions propriétaires
payantes sous licence comme PRTG (Paessler), OpManager ou Dynatrace HP OpenView/BTO,
IBM Tivoli, SCOM, SolarWinds Orion sont souvent sollicitées par les entreprises avec
des besoins de surveillance réseau plus avancés.

Avantages :

 Solutions plus globales.


 Périmètres techniques et fonctionnels étendus.
 Support présent et réactif.

Inconvénients :

 Coûts d’acquisition et de support parfois élevés.


 Incompatibilités entre fournisseurs (plusieurs produits différents).
 Développements additionnels restreints et coûteux.

Etude des protocole de supervision :

Définition de la supervision
La supervision se définit comme une technique utilisant au mieux les ressources informatiques pour
obtenir des informations sur l'état des réseaux et de leurs composants. Ces données seront ensuite
traitées et affichées afin de mettre en lumière d'éventuels problèmes.
La supervision peut résoudre les problèmes automatiquement ou dans le cas contraire prévenir via un
système d'alerte (email ou SMS par exemple) les administrateurs. Cette définition de la supervision est
décrite plus en détail dans la norme ISO7498/4.
Plusieurs actions sont ainsi réalisées : Acquisition de données, analyse, puis visualisation et réaction.
Un tel processus est réalisé à plusieurs niveaux d'un parc de machines : Au niveau interconnexions
(Réseau), au niveau de la machine elle-même (Système) et au niveau des services offerts par cette
machine (Applications).

Supervision réseau
Par le terme réseau on entend ici l'aspect communication entre les machines. Le rôle est de s'assurer
du bon fonctionnement des communications et de la performance des liens (débit, latence, taux
d'erreurs). C'est dans ce cadre que l'on va vérifier par exemple si une adresse IP est toujours joignable,
ou si tel port est ouvert sur telle machine, ou faire des statistiques sur la latence du lien réseau.

Supervision système

La surveillance se cantonne dans ce cas à la machine elle-même et en particulier ses ressources. Si l'on
souhaite par exemple contrôler la mémoire utilisée ou la charge processeur sur le serveur voire analyser
les fichiers de logs système.

Supervision applicative

Cette technique est plus subtile, c'est elle qui va nous permettre de vérifier le fonctionnement d'une
application lancée sur une machine. Cela peut être par exemple une tentative de connexion sur le port
de l'application pour voir si elle retourne ou demande bien les bonnes informations, mais aussi de
l'analyse de logs applicatifs.
En effet rien ne garantit qu'un port X ouvert veut dire que l'application qui tourne derrière n'est pas
"plantée".

Les protocoles existants


Il existe des protocoles réseau qui permettent de récupérer des informations sur le parc informatique.
Nous allons en étudier deux particulièrement importants qui possèdent des rôles très différents mais
qui ont un point en commun : Ils sont tout deux largement utilisés par les logiciels de supervision.

ICMP (Internet Control Message Protocol)

ICMP est un protocole de couche réseau (couche 3 du modèle OSI) qui vient palier à l'absence de message
d'erreur du protocole IP (Internet Protocol). En effet si il y a un incident de transmission les équipements
intermédiaires vont utiliser ce protocole pour prévenir la machine émettrice. Les paquets ICMP sont
encapsulés dans des paquets IP (malgré qu'ils soient au même niveau OSI), et peuvent contenir des bouts
de paquets IP pour citer celui ayant généré l'erreur. Afin de catégoriser les erreurs, elles sont divisés
en types eux-mêmes parfois redivisés en codes. Par exemple le type 3 représente un destinataire
inaccessible : Il existe 16 codes différents en fonction de la raison pour laquelle le destinataire n'est
pas joignable.
C'est un protocole très simple, qui n'a pas pour fonction directe la supervision d'un réseau mais qui est
utilisé comme source d'information sur la qualité du réseau ou sur la présence d'une machine.

SNMP (Simple Network Management Protocol)

 Présentation
SNMP (Simple Network Management Protocol) est un protocole de couche applicative qui
a pour but de superviser les réseaux. Il a été conçu en 1988 par l'IETF (Internet
Engineering Task Force) avec pour idée directrice de créer un protocole simple qui ne
vienne pas gêner le trafic du réseau qu'il supervise.
Depuis sa création, le protocole a évolué par soucis de sécurité: La version 2 qui est pour
l'instant la plus utilisée possède une notion de communauté qui est utilisée comme un
mot de passe, la version 3 durcit un peu plus le protocole en y ajoutant le chiffrement.

 Fonctionnement
Par soucis de simplicité et donc de rapidité, SNMP ne transporte que des variables et
s'appuie sur le protocole UDP (User Datagram Protocol). SNMP va créer un dialogue entre
des agents installés sur des machines à superviser et un serveur de supervision.

Les échanges entre agents et serveur se résument à trois opérations, les alarmes, les
requêtes et les réponses :

o Une requête est émise du serveur vers un agent via le port 161 UDP si le
serveur veut demander ou imposer quelque chose à cet agent. La requète
peut être de quatre types
 GetRequest : Demande la valeur d'une variable à un agent
 GetNextRequest : Demande la valeur suivante de la variable
 GetBulk : Demande un ensemble de variables regroupées
 SetRequest : Demande la modification de la valeur d'une
variable sur un agent
o L'agent va ensuite traiter cette requète et emettre une réponse via le
même port. Si tout se passe bien, l'agent répond un GetResponse
accompagné de la valeur demandée. Mais dans le cas contraire l'agent
ajoutera un code d'erreur en réponse (par exemple No Access ou Read
Only)
o Une alarme est créée par un agent en cas d'évènement et utilise un
message dit de type trap ou de type inform pour prévenir le serveur. Ce
message SNMP transite via le port 162 UDP. Les alarmes peuvent prendre
les formes suivantes :
 ColdStart(0) : Redémarrage à froid du système
 WarmStart(1) : Redémarrage à chaud du système
 LinkDown(2) : Le lien réseau n'est plus opérationnel
 LinkUp(3) : Le lien réseau est opérationnel
 AuthentificationFailure(4) : Tentative d'accès à l'agent
avec un mauvais nom de communauté
 EGPNeighboorLoss(5) : La passerelle adjacente ne répond
plus
 EntrepriseSpecific(6) : Alarme propre aux constructeurs
Étant donné que ces requêtes utilisent des noms de variables, ceux-ci doivent être
communs à tout matériel que l'on souhaite monitorer (et supportant SNMP).
C'est pour cette raison que les données sont stockées dans une base normalisée nommée
MIB (Managed Information Base). Cette base organisée de manière hiérarchique et est
assez compliquée à lire pour un humain. Chaque information (les fameuses variables
précédentes) est identifiée par un OID (Object IDentifier).

Par exemple, pour obtenir l'uptime (durée de temps depuis le dernier redémarrage de la
machine) :

Fig1 snmpget -v 2c -c public localhost .1.3.6.1.2.1.1.3.0 system.sysUpTime.0 =


Timeticks: (23599841) 2 days, 17:33:18.41
Ici nous avons lancé une requête GetRequest en SNMP v2 avec pour communauté "public"
vers l'agent "localhost" en demandant l'information d'OID ".1.3.6.1.2.1.1.3.0"
correspondant à la variable system.sysUpTime.0.
https://www.appvizer.fr/magazine/services-informatiques/supervision-reseau/monitoring-
reseau-4-outils-pour-detecter-les-anomalies

https://www.appvizer.fr/magazine/services-informatiques/supervision-applicative/tendances

https://fr.wikipedia.org/wiki/Supervision_(informatique)

https://cisco.goffinet.org/ccna/gestion-infrastructure/supervision-snmp/

http://www.o00o.org/monitoring/bases.html

Vous aimerez peut-être aussi