Simple network management protocol
Pile de protocoles | ||||||||||||||
|
||||||||||||||
Modèle Internet Modèle OSI |
Simple Network Management Protocol (abrégé SNMP), en français « protocole simple de gestion de réseau », est un protocole de communication qui permet aux administrateurs réseau de gérer les équipements du réseau, de superviser et de diagnostiquer des problèmes réseaux et matériels à distance.
Sommaire |
[modifier] Principe
Les systèmes de gestion de réseau sont basés sur trois éléments principaux : un superviseur, des nœuds (ou nodes) et des agents. Dans la terminologie SNMP, le synonyme manager est plus souvent employé que superviseur. Le superviseur est la console qui permet à l'administrateur réseau d'exécuter des requêtes de management. Les agents sont des entités qui se trouvent au niveau de chaque interface, connectant au réseau l'équipement géré (nœud) et permettant de récupérer des informations sur différents objets.
Switchs, hubs, routeurs et serveurs sont des exemples d'équipements contenant des objets gérables. Ces objets gérables peuvent être des informations matérielles, des paramètres de configuration, des statistiques de performance et autres 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 arborescente appelée MIB (« Management Information Base »). SNMP permet le dialogue entre le superviseur et les agents afin de recueillir les objets souhaités dans la MIB..
L'architecture de gestion du réseau proposée par le protocole SNMP est donc fondée sur trois principaux éléments :
- Les équipements gérés (managed devices) sont des éléments du réseau (ponts, switchs, hubs, routeurs ou serveurs), contenant des « objets de gestion » (managed objects) pouvant être des informations sur le matériel, des éléments de configuration ou des informations statistiques ;
- Les agents, c'est-à-dire les applications de gestion de réseau résidant dans un périphérique, sont chargées de transmettre les données locales de gestion du périphérique au format SNMP ;
- Les systèmes de gestion de réseau (network management systems notés NMS), c'est-à-dire les consoles à travers lesquelles les administrateurs peuvent réaliser des tâches d'administration.
[modifier] En pratique
Concrètement, dans le cadre d'un réseau, SNMP est utilisé :
- pour administrer les équipements
- pour surveiller le comportement des équipements
Une requête SNMP est un datagramme UDP habituellement à destination du port 161. Les schémas de sécurité dépendent des versions de SNMP (v1, v2 ou v3). 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. Pour des raisons de sécurité, il convient de modifier cette valeur. Un nom de communauté différent peut être envisagé pour les droits en lecture et ceux en écriture. Les versions 1 et 2 du protocole SNMP comportent de nombreuses lacunes de sécurité. C'est pourquoi, les bonnes pratiques recommandent de n'utiliser que la version 3. Pour l'utilisation d'administrations serveurs de sensibles à distance via SNMP (reboot, etc), la version 3 montre tout de même certaines limites en sécurité (chiffrement plutôt faible).
Un grand nombre de logiciels libres et propriétaires utilisent SNMP pour interroger régulièrement les équipements et produire des graphes rendant compte de l'évolution des réseaux ou des systèmes informatiques (NetCrunch 5, MRTG, Cacti, Nagios, Zabbix...).
Le protocole SNMP définit aussi un concept de trap. Une fois défini, si un certain événement se produit, comme par exemple le dépassement d'un seuil, l'agent envoie un paquet UDP à un serveur. Ce processus d'alerte est utilisé dans les cas où il est possible de définir simplement un seuil d'alerte. Les traps SNMP sont envoyés en UDP/162.
[modifier] Autres utilisations
Le protocole SNMP peut aussi être utilisé dans le domaine industriel. SNMP sert à transporter des informations ne concernant pas le réseau informatique et transporte alors des informations applicatives industrielles.