1-Le Protocole SNMP
- Christine Gnama Sakouvogui
- 9 avr. 2020
- 3 min de lecture
1.1 – Présentation générale
SNMP (Simple Network Management Protocol) est le protocole de gestion de réseaux proposé par l’IETF. Il est actuellement le protocole le plus utilisé pour la gestion des équipements de réseaux.
SNMP est un protocole 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 gestion à distance des applications: les bases de données, les serveurs, les logiciels, etc.
L’environnement de gestion SNMP est constitué de plusieurs composantes : la station de supervision, les éléments actifs du réseau, les variables MIB et un protocole. Les différentes composantes du protocole SNMP sont les suivantes:
Les éléments actifs du réseau sont les équipements ou les logiciels que l’on cherche à gérer. Cela va d’une station de travail à un concentrateur, un routeur, un pont, etc. Chaque élément du réseau dispose d’une entité dite agent qui répond aux requêtes de la station de supervision. Les agents 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.
La MIB (Management Information Base) est une collection d’objets résidant dans une base d’information virtuelle. Ces collections d’objets sont définies dans des modules MIB spécifiques.
Le protocole, 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.
1.2 – Fonctionnement
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, lequel retourne des réponses. 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 [RFC 768]. 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.

Les requêtes SNMP Il existe quatre types de requêtes: GetRequest, GetNextRequest, GetBulk, SetRequest.
La requête GetRequest permet la recherche d’une variable sur un agent.
La requête GetNextRequest permet la recherche de la variable suivante.
La requête GetBulk permet la recherche d’un ensemble de variables regroupées.
La requête SetRequest permet de changer la valeur d’une variable sur un agent.
Les réponses de SNMP À la suite de requêtes, l’agent répond toujours par GetResponse. Toutefois si la variable demandée n’est pas disponible, le GetResponse sera accompagné d’une erreur noSuchObject.
Les alertes (Traps, Notifications) Les alertes sont envoyées quand un événement non attendu se produit sur l’agent. Celui-ci en informe la station de supervision via une trap. Les alertes possibles sont: ColdStart, WarmStart, LinkDown, LinkUp, AuthentificationFailure.
2.3 – Les MIBS
La MIB (Management Information base) est la base de données des informations de gestion maintenue par l’agent, auprès de laquelle le manager va venir pour s’informer.
Deux MIB publics ont été normalisées: MIB I et MIB II (dite 1 et 2). Un 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.
La MIB est une structure arborescente dont chaque noeud est défini par un nombre ou OID (Object Identifier). Elle contient une partie commune à tous les agents SNMP en général, une partie commune à tous les agents SNMP d’un même type de matériel et une partie spécifique à chaque constructeur. Chaque équipement à superviser possède sa propre MIB. Non seulement la structure est normalisée, mais également les appellations des diverses rubriques.
Ces appellations ne sont présentes que dans un souci de lisibilité. En réalité, chaque niveau de la hiérarchie est repéré par un index numérique et SNMP n’utilise que celui-ci pour y accéder.
Voici un exemple de structure de table MIB :

2.4 L’authentification
L’authentification a pour rôle d’assurer que le paquet reste inchangé pendant la transmission, et que le mot de passe est valide pour l’usager qui fait la requête.
Pour construire ce mécanisme, on doit avoir connaissance des fonctions de hachage à une seule direction. Des exemples de ces fonctions sont : MD5 et SHA-1. Ces fonctions prennent en entrée une chaîne de caractères de longueur indéfinie, et génèrent en sortie une chaîne d’octets de longueur finie (16 octets pour MD5, 20 octets pour SHA-1).
Pour authentifier l’information qui va être transmise, on doit aussi avoir un mot de passe qui est « partagé ». Le mot de passe ne doit donc être connu que par les deux entités qui s’envoient les messages, et préférablement par personne d’autre.
La figure ci dessous montre le mécanisme d’authentification :

Exemple de trame SNMP

Commentaires