Simple Network Management Protocol

De Zed-Wiki
Aller à : Navigation, rechercher

SNMP signifie Simple Network Management Protocol. Ce protocole sert à la gestion des équipements d'un parc informatique (serveur, routeur, switch, etc.). Il permet de controler l'état à distance et de prévoir les problèmes.

SNMP est composé d'une partie management ou l'on peut effectuer des commandes. Pour cela on utilise les noeuds OID. Enfin il y a les agents qui s'occupent de collecter les informations des différents noeuds.

Avec SNMP on peut gérer les équipements qui sont manageables et qui ont un SNMP d'implémenter. On peut ainsi récupérer les informations matérielles, les configurations, les statistiques d'interfaces etc. Pour cela il faut récupérer la base de données de l'équipement : MIB (Management Information Base).

L'administrateur peut ainsi surveiller un parc avec des outils comme (Cacti, Nagios, etc.) Ces logiciels sont basés sur SNMP. Il font des réquêtes afin de récupérer des valeurs et de les rapporter sur une interface.

Configuration de l'agent SNMP de linux

SNMP est un agent fonctionnant sur le port 161 en UDP. Le fichier de configuration se trouve dans /etc/snmp/snmpd.conf

Pour que l'agent ne fonctionne pas que sur l'interface de loopback, il faut ajouter la ligne suivante au fichier :

agentaddress <Adresse de votre interface>:161

Reste 3 étapes :

La première représente le nom de la communauté snmp et les réseaux qui ont accès. Ici la communauté sera public. On peut voir que nous pourrons interroger à partir de l'host 127.0.0.1/32 ou bien du réseau X.X.X.X/XX.

#       sec.name  source          community
com2sec local 127.0.0.1/32 public
com2sec local X.X.X.X/XX public

La seconde pour les groupes de sécuriter. Ici on peut remarquer que l'on peut faire des réquêtes SNMP en version 1, 2c et usm.

group MyROGroup v1          local
group MyROGroup v2c         local
group MyROGroup usm         local

La dernière pour gérer les accès de chaque groupe :

access MyROGroup ""      any       noauth    exact  all    none   none

Test de SNMP

SNMP peut être tester à partir de la commande snmpget ou encore snmpwalk. En effet, snmpget est utilisé par beaucoup de logiciel de monitoring. Snmpget permet de faire des requêtes sur des points bien precis en fonction de l'OID. En revanche snmpwalk est un peu plus verbeux. Il permet de récuperer l'ensemble des informations et par exemple de connaitre le bonne OID pour faire des plugins sur certaines valeurs.

Ex :

snmpwalk -c <communaute> -v <version de snmp> <Address IP>
snmpwalk -c public -v 2c 127.0.0.1