Simple Network Management Protocol

avec Debian GNU/linux

Rappel

Protocole standard pour l'administration réseau (IP/UDP) Les objets consultables OID (Object IDentifier) sont contenus dans un arbre numéroté.
mib-2 correspond à .1.3.6.1.2.1

Installation d'un agent

Installer le daemon SNMP

sudo apt-get install snmpd

SNMP et le controle d'accès

A la réception d'une requête contenant le modèle de sécurité, le nom de communauté et l'OID, l'agent SNMP répondra en tenant compte de la source et du type d'accès

Le contrôle d'accès est basé sur le modèle VACM (View based Access Control Model)
Il faut utiliser les directives suivantes

directive fonction en bref
com2sec associe un nom de sécurité à partir d'une source et un nom de communauté com2sec(source, community) = sec.name
group associe un nom de groupe à partir d'un modèle de sécurité et d'un nom de sécurité group(sec.model, sec.name) = group.name
view définit une vue en incluant ou excluant un sous-arbre OID view(included | excluded, subtree) = view.name
access à partir de group.name, sec.model, sec.level, prefix, associe à un droit d'accès (read, write, notify) une vue access(group.name, context, sec.model, sec.level, prefix, read) = view.name
access(group.name, context, sec.model, sec.level, prefix, write) = view.name
access(group.name, context, sec.model, sec.level, prefix, notify) = view.name


Les valeurs possibles sont :

type valeurs
source
  • un nom d'hôte (nom dns ou ip)
  • un masque réseau (ip/mask ou ip/bits)
  • default
sec.model
  • v1
  • v2c
  • usm
  • any
subtree OID, exemples équivalents :
  • 1
  • system
  • .1.3.6.1.2.1.1
  • .iso.org.dod.internet.mgmt.mib-2.system
context
  • "" (pour sec.model v1 et v2c)
sec.level
  • noauth
  • auth (uniquement pour le sec.model usm)
  • priv (uniquement pour le sec.model usm)
prefix
  • 0
  • exact (uniquement pour le sec.model usm)
  • prefix (uniquement pour le sec.model usm)
read view.name ou none
write view.name ou none
notify view.name ou none

Configurer le daemon

pour accèder à partir de localhost à toute la mib-2 en lecture seule
sudo vi /etc/snmp/snmpd.conf
~ fichier /etc/snmp/snmpd.conf ~

#com2sec sec.name source    community
com2sec  local    localhost public

#group group.name sec.model sec.name
group  MyROGroup  any       local

#view view.name incl/excl   subtree
view  mib2      included    .iso.org.dod.internet.mgmt.mib-2

#access group.name context sec.model sec.level prefix read write notify
access  MyROGroup  ""      any       noauth    0      mib2 none  none

Utiliser la nouvelle configuration

Redémarrer le service
sudo invoke-rc.d snmpd restart
ou avec
sudo /etc/init.d/snmpd restart
ou recharger la configuration
sudo invoke-rc.d snmpd reload
ou avec
sudo /etc/init.d/snmpd reload

Manager SNMP

Installer les clients SNMP

sudo apt-get install snmp

Test

Toute petite requête auprès de localhost, pour la description du système (mib-2.system.sysDescr), avec le protocole v1 (sec.model v1), en utilisant le nom de communauté "public"
snmpget -v 1 -c public localhost system.sysDescr.0
Petite requête auprès de localhost, pour parcourir les interfaces (mib-2.interface), avec le protocole v1 (sec.model v1), en utilisant le nom de communauté "public"
snmpwalk -v 1 -c public localhost interface


Références

ASN.1 et la mib-2
Le protocole SNMP
Modèle VACM
man snmpd.conf sur net-snmp

home envoyer un mail

Debian Get FireFox Valid HTML 4.01! Valid CSS!