SNMP

De The Linux Craftsman
Aller à la navigation Aller à la recherche
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Agent Manager
Protocole udp udp
Port 161 162
Configuration Iptables iptables -I INPUT 2 -p udp --dport 161 -j ACCEPT iptables -I INPUT 2 -p udp --dport 162 -j ACCEPT

Sous Linux

Installation

# yum -y install net-snmp net-snmp-utils

Configuration

Remplacez le contenu du fichier /etc/snmp/snmpd.conf :

# Assigne la communauté 'idv90we3rnov90wer' à l'utilisateur 'ConfigUser'
# Assigne la communauté '209ijvfwer0df92jd' à l'utilisateur 'AllUser'
#       sec.name        source          community
com2sec ConfigUser      default         idv90we3rnov90wer
com2sec AllUser         default         209ijvfwer0df92jd
# Assigne le groupe 'ConfigUser' à 'ConfigGroup' pour le SNMP Version 2c
# Assigne le groupe 'AllUser' à 'AllGroup' pour le SNMP Version 2c
#                       sec.model       sec.name
group   ConfigGroup     v2c             ConfigUser
group   AllGroup        v2c             AllUser
# Défini 'SystemView', qui comprend tout sous .1.3.6.1.2.1.1 (ou .1.3.6.1.2.1.25.1)
# Défini 'AllView', qui comprend tout sous .1
#                       incl/excl       subtree
view    SystemView      included        .1.3.6.1.2.1.1
view    SystemView      included        .1.3.6.1.2.1.25.1.1
view    AllView         included        .1
# Donne à 'ConfigGroup' l'accès en RO à 'SystemView'
# Donne à 'AllGroup' l'accès en RO à 'AllView'
#                       context model   level   prefix  read            write   notify
access  ConfigGroup     ""      any     noauth  exact   SystemView      none    none
access  AllGroup        ""      any     noauth  exact   AllView         none    none

Démarrage

  • Pour SystemVInit:
# service snmpd start
  • Pour SystemD:
# systemctl start snmpd.service

Vérification

On s'assure que le service fonctionne comme attendu:

# netstat -aunp | grep snmp
udp        0      0 0.0.0.0:161                 0.0.0.0:*                               1680/snmpd

Enregistrement dans le chargeur de démarrage

  • Pour SystemVInit:
# chkconfig snmpd on
  • Pour SystemD:
# systemctl enable snmpd.service

Connexion avec un client

Sur une autre machine utilisez les commandes suivantes pour parcourir l’arborescence SNMP:

snmpwalk -v 2c -c idv90we3rnov90wer -O e @IP
ou
snmpwalk -v 2c -c 209ijvfwer0df92jd -O e @IP

Remplacez @IP par l'adresse IP de votre serveur.

Vous pouvez également utiliser des OID pour récupérer une valeur particulière :

# snmpget -v 2c -c 209ijvfwer0df92jd -O e 192.168.1.254 HOST-RESOURCES-MIB::hrDeviceDescr.196608
HOST-RESOURCES-MIB::hrDeviceDescr.196608 = STRING: GenuineIntel: Intel(R) Core(TM) i7-3630QM CPU @ 2.40GHz

Ou bien parcourir une branche SNMP:

# snmpwalk -v 2c -c 209ijvfwer0df92jd -O e 192.168.1.254 IP-MIB::ipAdEntAddr
IP-MIB::ipAdEntAddr.127.0.0.1 = IpAddress: 127.0.0.1
IP-MIB::ipAdEntAddr.192.168.1.252 = IpAddress: 192.168.1.252
IP-MIB::ipAdEntAddr.192.168.1.254 = IpAddress: 192.168.1.254
IP-MIB::ipAdEntAddr.192.168.2.252 = IpAddress: 192.168.2.252
IP-MIB::ipAdEntAddr.192.168.2.254 = IpAddress: 192.168.2.254
IP-MIB::ipAdEntAddr.192.168.3.252 = IpAddress: 192.168.3.252
IP-MIB::ipAdEntAddr.192.168.3.254 = IpAddress: 192.168.3.254
IP-MIB::ipAdEntAddr.192.168.100.200 = IpAddress: 192.168.100.200
IP-MIB::ipAdEntAddr.192.168.100.202 = IpAddress: 192.168.100.202