Simple Network Management Protocol (SNMP)

Simple Network Management Protocol (SNMP), est un protocole fournissant un format de message pour les communications entre des superviseurs et des agents SNMP. SNMP offre un environnement standardisé et un langage commun utilisé pour la supervision et l'administration des équipements dans un réseau.

 

SNMP permet donc aux administrateurs réseau de gérer les équipements du réseau mais aussi de superviser et de diagnostiquer des problèmes réseaux et matériels à distance.

 

Un environnement SNMP est composé de 3 éléments :

  • Un superviseur SNMP : Le système utilisé pour contrôler et monitorer les activités des équipements réseaux utilisant SNMP.
  • Un agent SNMP : La composante logicielle faisant partie de l'équipement supervisé et chargée de récolter les données, les traiter et les envoyer au format SNMP.
  • Une MIB (Managed Information Base) : La collection des objets supervisés sur l'agent SNMP.

Pour activer un agent SNMP, il est nécessaire de définir la relation entre le superviseur et l'agent.

SNMP est défini dans les RFCs 3411 à 3418.

 

Notifications SNMP

Une fonctionnalité majeure de SNMP est sa capacité à générer des notifications directement depuis un agent SNMP. Ces notifications ne nécessitent pas d'être envoyées par un superviseur SNMP. Elles peuvent indiquer une mauvaise authentification, des redémarrages, la perte d'une connexion ou d'un voisin, ou tout autre évènement jugé important.

Il existe deux types de notifications, les traps et les informs :

  • Une trap est un message asynchrone sans acquittement envoyé par l'agent à l'ensemble des superviseurs SNMP listés dans sa table "host receiver"
  • Un inform est un message asynchrone avec acquittement envoyé par l'agent à ses superviseurs SNMP qui doivent acquitter ce message dès réception. Un superviseur SNMP qui reçoit une requête inform accuse réception du message avec une "SNMP response protocol data unit" (PDU).

Les traps et informs SNMP sont envoyés en UDP sur le port 162 du superviseur.

 

Polling SNMP

A l'inverse, il est possible qu'un superviseur SNMP demande des informations très précises à un de ses agents, par exemple l'état de certaines interfaces, la liste des VLANs créés ou tout autre paramètre dont un exploitant réseau pourrait avoir besoin.

Le superviseur interroge donc la MIB de l'agent, dans laquelle il peut récolter des informations concernant l'ensemble des objets supervisés de cet agent. Cette collecte est nommée "polling SNMP".

Cette requête SNMP est un datagramme UDP habituellement envoyé par le superviseur à destination du port 161 de l'agent.

 

SNMPv1/v2c versus SNMPv3

 

Dans les versions 1 et 2, une requête SNMP contient un nom appelé communauté, utilisé comme un mot de passe. Sur de nombreux équipements, la valeur par défaut de communauté est public ou private. Les données passent en clair sur le réseau, il est donc fortement recommandé pour des raisons de sécurité d'utiliser SNMPv3.

SNMPv3 offre un accès sécurisé aux équipements par une combinaison d'authentification et de cryptage des flux sur le réseau. Les fonctionnalités de sécurité proposées en SNMPv3 sont :

  • Intégrité du message : Assure que le message n'a pas été altéré lors de la traversée du réseau.
  • Authentification : Détermine que le message provient d'une source valide.
  • Cryptage : Crypte le contenu du paquet pour l'empêcher d'être vu par une source non autorisée.

SNMPv3 offre à la fois des modèles de sécurité et des niveaux de sécurité. Un modèle de sécurité est une stratégie d'authentification mise en place pour un utilisateur et le rôle auquel l'utilisateur est affecté. Un niveau de sécurité correspond au niveau de sécurité au sein du modèle de sécurité. La combinaison d'un modèle et d'un niveau de sécurité détermine quel mécanisme de sécurité est employé dans le traitement des paquets SNMP.

 

 

Autres articles sur le SNMP :

Configuration de l'agent SNMP sur un contrôleur WiFi Cisco

Configurer SNMPv3 sur un Nexus 7000 (en version 6.1(3))

Persistance des indexes des interfaces sous Cisco

Informations supplémentaires