Système snmpd

Un article de Casys (Canadian Sysadmins).


Auteur: Thomas Boutry

Sommaire

Installation

Installation avec le système de package, du serveurs SNMPD et des outils clients

sudo apt-get install snmpd
sudo apt-get install snmp

Configuration du serveur snmpd

sudo vi /etc/snmp/snmpd.conf
com2sec local   localhost public
group MyROSystem v1        local
group MyROSystem v2c       local
group MyROSystem usm       local
group MyROGroup v1         local
group MyROGroup v2c        local
group MyROGroup usm        local
group MyRWGroup v1         local
group MyRWGroup v2c        local
group MyRWGroup usm        local
view all    included  .1                               80
view system included  .iso.org.dod.internet.mgmt.mib-2.system
access MyROSystem ""     any       noauth    exact  system none   none
access MyROGroup ""      any       noauth    exact  all    none   none
access MyRWGroup ""      any       noauth    exact  all    all    none
syslocation Montreal (configure /etc/snmp/snmpd.local.conf)
syscontact Nom_du_contact  (configure /etc/snmp/snmpd.local.conf)


Test de la configuration snmp v.1

snmpwalk localhost -c public -v1

RESULTAT : 
SNMPv2-MIB::sysDescr.0 = STRING: Linux barabbas.xerus.net 2.6.24-16-generic #1 SMP Thu Apr 10 13:23:42 UTC 2008 i686
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (11596) 0:01:55.96
SNMPv2-MIB::sysContact.0 = STRING: xerus  (configure /etc/snmp/snmpd.local.conf)
SNMPv2-MIB::sysName.0 = STRING: barabbas.xerus.net
SNMPv2-MIB::sysLocation.0 = STRING: Montreal (configure /etc/snmp/snmpd.local.conf)
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00
.....


Création du système d'authentification Version 3

Création de l'usagé

sudo net-snmp-config --create-snmpv3-user -a "Mot_de_pass" monitoring

RESULTAT
adding the following line to /var/lib/snmp/snmpd.conf:
   createUser monitoring MD5 "Mot_de_passe" DES
adding the following line to /usr/share/snmp/snmpd.conf:
   rwuser monitoring

Réalisation d'un test de fonctionnalité.
Ceci récupère la liste des informations snmp disponible.

snmpwalk -u monitoring -A Mot_de_pass -a MD5 -l authNoPriv 127.0.0.1

Configuration de processes exécuté par le systeme snmpd

Malheureusement tout les services ne peuvent pas être intéroggé directement avec le système SNMPD.
Cependant il est possible de configurer des scripts qui seront exécuté par le système snmpd.

Nous allons m'être en place 2 scripts pour l'exemple:
1- le nombre total de processes 2- le nombre de processes Zombie.

Définition des scripts dans la configuration snmpd:

sudo vi /etc/snmp/snmpd.conf
---
exec Totalprocs  /usr/lib/nagios/plugins/check_procs -w 250 -c 400
exec Zombieprocs /usr/lib/nagios/plugins/check_procs -s Z -w 3 -c 5
---

Test de la configuration :

snmpwalk -u monitoring -A Mot_de_pass -a MD5 -l authNoPriv 127.0.0.1 .1.3.6.1.4.1.2021.8

--- RESULTAT ---
UCD-SNMP-MIB::extIndex.1 = INTEGER: 1
UCD-SNMP-MIB::extIndex.2 = INTEGER: 2
UCD-SNMP-MIB::extNames.1 = STRING: procs
UCD-SNMP-MIB::extNames.2 = STRING: Zombieprocs
UCD-SNMP-MIB::extCommand.1 = STRING: /usr/lib/nagios/plugins/check_procs
UCD-SNMP-MIB::extCommand.2 = STRING: /usr/lib/nagios/plugins/check_procs
UCD-SNMP-MIB::extResult.1 = INTEGER: 0
UCD-SNMP-MIB::extResult.2 = INTEGER: 0
UCD-SNMP-MIB::extOutput.1 = STRING: PROCS OK: 148 processes
UCD-SNMP-MIB::extOutput.2 = STRING: PROCS OK: 0 processes with STATE = Z
UCD-SNMP-MIB::extErrFix.1 = INTEGER: noError(0)
UCD-SNMP-MIB::extErrFix.2 = INTEGER: noError(0)
UCD-SNMP-MIB::extErrFixCmd.1 = STRING: 
UCD-SNMP-MIB::extErrFixCmd.2 = STRING: 

Références

1 - http://www.debianhelp.co.uk/snmp.htm