Simple Network Management Protocol — configuration d'une architecture Manager/Agent, interrogation des équipements et exploration des MIBs.
SNMP est le standard de l'industrie pour la surveillance et la gestion des équipements réseau — serveurs, routeurs, commutateurs. Une architecture SNMP de base repose sur deux rôles distincts : le Manager qui interroge, et l'Agent qui répond.
snmpwalk ou des logiciels comme Zabbix ou Nagios.
snmpd.
Il écoute les requêtes du Manager et renvoie les informations demandées.
1.3.6.1.2.1.1.1 correspond à la description système.
L'Agent est la machine que vous souhaitez surveiller
(IP d'exemple : 192.168.100.3).
Pour obtenir les outils complets, assurez-vous que vos dépôts incluent les sections
non-free (Debian) afin de télécharger les définitions de MIBs propriétaires si nécessaire.
Modifiez /etc/apt/sources.list pour ajouter non-free
ou non-free-firmware selon votre version de Debian.
sudo apt update
sudo apt install -y snmpd
Ouvrez le fichier de configuration principal de l'agent :
sudo nano /etc/snmp/snmpd.conf
Modifiez ou ajoutez les deux directives suivantes :
# Écouter sur toutes les interfaces (port standard SNMP = 161)
agentAddress udp:161
# Autoriser la lecture depuis n'importe quelle source avec la communauté "public"
rocommunity public default
sudo systemctl restart snmpd.service
Le Manager est votre station de monitoring — la machine depuis laquelle vous interrogerez les agents du réseau.
sudo apt install snmp snmp-mibs-downloader
snmp-mibs-downloader est crucial : il télécharge les noms d'objets lisibles
par des humains, pour ne pas avoir à manipuler uniquement des suites de chiffres complexes
comme 1.3.6.1.2.1.1.1.0.
Par défaut, Linux ignore les MIBs téléchargées pour rester léger.
Ouvrez le fichier de configuration client et commentez la ligne mibs : :
sudo nano /etc/snmp/snmp.conf
# Commenter cette ligne pour activer l'utilisation des MIBs
# mibs :
La commande snmpwalk permet de parcourir l'arbre des informations d'un agent
et de lister toutes les données disponibles.
snmpwalk -c public -v 2c 192.168.100.3
-c public — définit la communauté. C'est un mot de passe en clair. public est la valeur par défaut, très peu sécurisée.-v 2c — utilise la version 2c. Rapide et simple, mais ne chiffre pas les données.192.168.100.3 — adresse IP de l'agent cible à interroger.
Pour ne pas tout lister, vous pouvez cibler un objet précis par son nom symbolique.
Exemple avec sysDescr (description du système) :
snmpwalk -c public -v 2c 192.168.100.3 sysDescr
# snmpget pour une seule valeur précise (plus rapide que snmpwalk)
snmpget -c public -v 2c 192.168.100.3 sysUpTime.0
Le SNMP est vaste. Pour savoir quoi surveiller (température, charge CPU, état des interfaces), vous devez connaître les noms ou numéros des OIDs. Voici les plus courants :
| Nom symbolique | OID numérique | Description |
|---|---|---|
| sysDescr | 1.3.6.1.2.1.1.1 | Description textuelle du système (OS, version…) |
| sysUpTime | 1.3.6.1.2.1.1.3 | Temps écoulé depuis le dernier démarrage |
| sysName | 1.3.6.1.2.1.1.5 | Nom d'hôte de l'équipement |
| ifSpeed | 1.3.6.1.2.1.2.2.1.5 | Vitesse nominale des interfaces réseau |
| ifOperStatus | 1.3.6.1.2.1.2.2.1.8 | État opérationnel des interfaces (up/down) |
| hrProcessorLoad | 1.3.6.1.2.1.25.3.3.1.2 | Charge CPU en pourcentage |
| hrStorageUsed | 1.3.6.1.2.1.25.2.3.1.6 | Espace disque utilisé |
public. Passez à SNMP version 3 qui offre
l'authentification par utilisateur et le chiffrement des données — ce que
les versions 1 et 2c sont incapables de faire.