Installation d’un serveur SNMP sous GNU/Linux

Date: 18/02/2008 | Catégories: Open-source,Reseau | Tags: ,,,,

Ce billet a pour but de détailler l'installation et la configuration d'un serveur SNMP sous Linux. J'ai choisi d'utiliser la solution open-source net-snmpd.

logo-netsnmp.jpg

Celle-ci dispose d'une communauté de développeurs très active. De plus cette solution est disponible sous de nombreux OS (Linux, BSD mais aussi Mac OS X et même Windows !).

Installation de net-snmp

Sous Fedora:

# yum install net-snmp

# yum install net-snmp-utils

Sous Ubuntu/Debian:

# apt-get install snmpd snmp-mibs-downloader libsnmp-dev

Configuration

Il faut, dans un premier temps, éditer le fichier /etc/snmp/snmpd.conf et configurer la ligne com2sec. Celle-ci permet d'associer une communauté SNMP à un "nom sécurisé". Elle contient 3 arguments: le premier est le nom le nom sécurisé, le second est le réseau (source des requêtes), le troisième est la communauté SNMP.

On autorise le daemon a écouter sur toutes les adresses IP et pas seulement sur la 127.0.0.1 en commentant la ligne suivante:

#agentAddress udp:127.0.0.1:161

et en dé-commentant:

agentAddress udp:161,udp6:[::1]:161

Par exemple, pour autoriser seulement les requêtes venant du réseau 192.168.1.0/24, il suffit d'ajouter la ligne suivante:

com2sec localnetwork 192.168.1.0/24 public

Ensuite il est possible d'associer ce "nom sécurisé" à un groupe:

group rogroup v1 localnetwork

On vient de demander la création du groupe rogroup (pour Read Only Group), qui contient localnetwork.

Il est également possible de créer des vus (c'est à dire de préciser ceux que les groupes peuvent voir dans la MIB). Personnellement, je n'utilise qu'une vue globale:

view all included .1 80

Finalement, on associe le groupe et la vue:

access rogroup "" any noauth exact all none none

Lancement du daemon SNMP

Sous Fedora:

# service snmpd start

Lancement automatique au démarrage (sous Fedora):

# chkconfig snmpd on

Sous Ubuntu/ Debian:

Il faut d'abord modifier le fichier /etc/default/snmpd et remplacer la ligne

SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'

par

SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid'

Puis lancer le daemon:

# /etc/init.d/snmpd restart

Comment tester

Il suffit de se mettre sur une machine dans un des réseaux autorisés (voir dans l'option com2sec) et de lancer la commande suivante:

# snmpwalk -v 1 -c public 192.168.29.50
La MIB standard devrait apparaître...

Il est maintenant possible de surveiller cette machine, par exemple avec des solutions comme Nagios, Zenoss ou Cacti...

Partager ce billet