Installation de SNMP sous RedHat.

SNMP est un protocole réseau qui permet le monitoring d’éléments systèmes et réseaux. Généralement, un serveur de supervision comme Centreon utilise SNMP pour connaitre rapidement l’état d’un parc informatique (switch, routeur, serveurs) comme l’occupation RAM, CPU, Disque, etc.
Dans ce tutoriel nous allons voir comment installer SNMP sous Linux et en particulier sous le système RedHat.

Installation de SNMP.

Lors de l’installation du service SNMP sur la machine Linux, le service se mettra en écoute sur le port 161 en UDP.

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

installer SNMP sous RedHat avec YUM

Une fois les paquets installés, je vous conseille de faire une sauvegarde du fichier de configuration SNMP original, snmp.conf

# cd /etc/snmp
# cp -p snmpd.conf snmpd.conf.dist

Sauvegarde du fichier snmp.conf sous RedHat

Puis nous allons modifier ce fichier et le remplacer son contenu par ces lignes :

# echo "rocommunity public">snmpd.conf
# echo "syslocation here" >>snmpd.conf
# echo "syscontact root@localhost" >>snmpd.conf

Configurer le fichier snmp.conf sous RedHat

La première définit la communauté « public » avec un accès en lecture et les 2 dernières sont libres. C’est ici que vous rajouterez la localisation et la fonction du serveur et les informations de contact en cas de problème.

Activation du SNMP.

Je n’ai pas trop l’habitude du système RedHat, concernant le service SNMP, une fois qu’il est installé, vous devez l’activer et le lancer avec les commandes suivantes :

# systemctl enable snmpd && systemctl start snmpd

Démarrer le service SNMP avec la commande systemctl sous RedHat

Si vous voulez connaitre le statut du service SNMP, utiliser la commande ci-dessous :

# service snmpd status

afficher le statut du service SNMP sous RedHat

Par défaut, le firewall est activé sur les nouvelles installations.

# service firewalld status

vérifier le statut du service firewalld sous RedHat

Si le firewall est actif, il faut rajouter ces 2 lignes (autoriser le port 161 à répondre) pour autoriser une machine distante à interroger notre serveur.

# firewall-cmd --permanent --add-port=161/udp
# firewall-cmd --reload

Ouvrir des ports sous RedHat avec la commande firewall-cmd

Test du SNMP.

Afin de s’assurer que notre serveur répond bien aux sollicitations SNMP, nous allons faire deux tests.

Test SNMP local

Il suffit d’utiliser la commande ci-dessous pour afficher toutes les informations que l’on peut récupérer sur le serveur avec SNMP.

snmpwalk -v 1 -c public -O e 127.0.0.1
Noté que 127.0.0.1 signifie « moi même ». Je ne fais rien transiter sur le réseau pour l’instant. Également, « public » est la communauté que j’ai mise dans ma configuration. Dans ma commande je ne demande pas d’OID spécifique, si le service est opérationnel, je vais avoir en retour un ensemble d’information relative à mon système.

Ici le serveur répond bien à la requête SNMP et affiche les MIB disponibles.

Tester le service SNMP en local avec la commande snmpwalk sous RedHat

Test SNMP Distant

A l’aide d’un logiciel de type « MIB Browser » comme iReasonning MIB Browser, tester l’accès SNMP au serveur. Ce test permet de s’assurer que vous avez accès à SNMP depuis une machine distante et que le port 161 est bien ouvert sur vos firewalls.

Tester le service SNMP de RedHat depuis un ordinateur distant

En cas de problème.

  • S’assurer de la connectivité réseau de vos deux machines, dans un premier temps via un ping
  • Vérifiez si votre pare-feu (netfilter, iptables, nftables) ne bloque pas les paquets en entrée ou en sortie
  • S’assurer que les OID basiques soient joignables avant de questionner des OID plus spécifiques.
  • Vérifiez que votre service est bien en écoute sur le bon port, la bonne interface réseau, la bonne IP (v4, v6), notamment avec la commande « ss » qui permet de lister les ports en écoute.
#ss –ulnp | grep 161

Vérifier que le port 161 est bien en écoute sur le serveur RedHat avec la commande ss

On voit ici que le port 161 est bien écoute en UDP.

Voici le détail des principales options :

  • « u » permet de lister les ports UDP uniquement
  • « l » permet de lister les ports en écoute (« Listening » )
  • « n » permet d’afficher les numéros de ports et non leur correspondance (exemple : afficher « 22 » plutôt que « SSH » )
  • « p » permet d’afficher les processus correspondants aux ports en écoute

Le service SNMP sous RedHat devrait être maintenant actif. Vous allez pouvoir superviser votre serveur Linux en toute simplicité avec Centreon par exemple ;)

That’s All.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *