Comment faire fonctionner le démon SNMP sur Ubuntu 18.04 LTS

Contexte

Obtenir SNMP sur Ubuntu 18.04 peut être un défi. La raison en est que le fichier de configuration SNMP par défaut contient tellement d’entrées qu’il est totalement écrasant et qu’il peut en outre être configuré pour écouter uniquement sur localhost. Enfin, si vous n’avez pas le port UDP 161 autorisé sur votre pare-feu, vous tournerez sans fin en rond.

Dans cet article, nous allons essayer d’installer SNMP sur Ubuntu afin qu’un serveur externe puisse accéder à votre configuration.

Nous installerons les bibliothèques, puis effectuerons une sauvegarde et une configuration minimale, puis commencerons les tests. En option, nous vérifierons s’il existe une restriction localhost. Je vous laisse la vérification du pare-feu ou contactez-nous si vous avez besoin d’aide supplémentaire.

Bibliothèque SNMP à installer

sudo apt-get install snmpd

Configuration

Le fichier snmpd.conf par défaut fourni avec Ubuntu est trop compliqué et nous n’avons vraiment besoin que de quelques entrées. Donc, ce que nous allons faire, c’est d’abord le sauvegarder afin que nous puissions partir de zéro avec des valeurs par défaut intelligentes:

cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.backup

Vous pouvez maintenant modifier le fichier à l’aide de votre éditeur de texte préféré, par exemple vi /etc/snmp/snmpd.conf et tout supprimer.

Remarque à propos des pare-feu

Vous devez activer le port UDP 161 sur votre pare-feu si vous surveillez votre serveur de l’extérieur. La configuration du pare-feu peut s’avérer l’un des aspects les plus difficiles de la surveillance SNMP, car vous pouvez parfois passer par plusieurs pare-feu, par exemple un pare-feu AWS et un pare-feu local Virtualmin. Si vous rencontrez le problème suivant, vous pourriez bien avoir affaire à un problème de pare-feu:

Timeout: No Response from host.domain.com

Voici un exemple de configuration qui fonctionne.

Si vous utilisez un système tel que PRTG pour surveiller vos serveurs, essayez les paramètres suivants:

# cat /etc/snmp/snmpd.confcom2sec readonly your_secret_communitysyslocation "Server Location"syscontact Firstname Lastnamesysservices 76master yesagentaddress udp:161rocommunity your_secret_community

Une fois que vous avez enregistré le fichier snmpd.conf, redémarrez le démon SNMPD.

service snmpd restart

Testing

Vous pouvez utiliser snmpwalk pour tester SNMP, à condition qu’il soit installé. Installez cet utilitaire en procédant ainsi:

apt install snmp

Ensuite, faites: snmpwalk-c your_secret_community -v1 localhost de l’hôte local ou de l’hôte distant à tester. Essayez d’abord localhost puis essayez l’adresse IP de votre serveur. Idéalement, vous souhaitez également effectuer ce test depuis votre NMS vers l’hôte distant.

Restriction d’hôte local ?

Vérifiez /etc/default/snmpd pour la restriction localhost

Vous devrez peut-être vérifier la ligne suivante pour voir si votre SNMP n’est pas verrouillé sur localhost:

# cat /etc/default/snmpdSNMPDOPTS='-Lsd -Lf /dev/null -u Debian-snmp -g Debian-snmp -I -smux,mteTrigger,mteTriggerConf -p /run/snmpd.pid'

Si vous voyez 127.0.0.1 mais que vous essayez de connecter SNMP à partir d’un système distant, supprimez le test 127.0.0.1

pour voir si SNMP écoute sur tous les ports :

:~# netstat -ulnp | grep 161udp 0 0 0.0.0.0:161 0.0.0.0:* 33914/snmpd

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.