GNU/Linux >> Tutoriels Linux >  >> Linux

Nagios :comment activer les arguments de ligne de commande check_nrpe

Question : Lorsque j'exécute la commande check_nrpe avec certains arguments, j'obtiens le message « CHECK_NRPE :0 octet reçu du démon. Vérifiez les journaux du serveur distant pour les messages d'erreur.”. Comment résoudre ce problème ?

Réponse : Le problème est très simple. check_nrpe ne prend aucun argument par défaut. Vous devez activer les arguments de ligne de commande pour check_nrpe comme indiqué ci-dessous.

Vérifiez le message d'erreur check_nrpe

Juste à des fins de test, supposons que vous exécutez la commande check_nrpe suivante qui affiche le message "CHECK_NRPE :reçu 0 octet du démon. ” message d'erreur.

$ /usr/local/nagios/libexec/check_nrpe -H 192.168.1.20 -c check_disk -a 60 80 /dev/sdb1
CHECK_NRPE: Received 0 bytes from daemon. Check the remote server logs for error messages.

Si vous affichez le /var/log/messages sur l'hôte distant (dans l'exemple ci-dessus, c'est-à-dire 192.168.1.20), vous verrez l'erreur nrpe "Erreur :la demande contient des arguments de commande ! " comme indiqué ci-dessous, indiquant que check_nrpe n'est pas activé pour prendre les arguments de la commande.

$ tail -f /var/log/messages
Dec 5 11:11:52 dev-db xinetd[2536]: START: nrpe pid=24187 from=192.168.101.108
Dec 5 11:11:52 dev-db nrpe[24187]: Error: Request contained command arguments!
Dec 5 11:11:52 dev-db nrpe[24187]: Client request was invalid, bailing out...
Dec 5 11:11:52 dev-db xinetd[2536]: EXIT: nrpe status=0 pid=24187 duration=0(sec)

Activer les arguments de la commande check_nrpe

Pour activer les arguments de commande dans NRPE, vous devez effectuer les deux actions suivantes.

1. Configurez NRPE avec –enable-command-args

Généralement, lorsque vous installez NRPE sur l'hôte distant, vous ferez ./configure sans aucun argument. Pour activer la prise en charge des arguments de commande dans le démon NRPE, vous devez l'installer avec –enable-command-args comme indiqué ci-dessous.

[remotehost]# tar xvfz nrpe-2.12.tar.gz
[remotehost]# cd nrpe-2.12

[remotehost]# ./configure --enable-command-args

[remotehost]# make all
[remotehost]# make install-plugin
[remotehost]# make install-daemon
[remotehost]# make install-daemon-config
[remotehost]# make install-xinetd

2. Modifiez nrpe.cfg et définissez dont_blame_nrpe

Modifiez le fichier /usr/local/nagios/etc/nrpe.cfg sur le serveur distant et définissez la directive dont_blame_nrpe sur 1 comme indiqué ci-dessous.

$ /usr/local/nagios/etc/nrpe.cfg
dont_blame_nrpe=1

Exécutez check_nrpe avec les arguments de la commande

Après les deux modifications ci-dessus, si vous exécutez le check_nrpe pour cet hôte distant particulier, vous ne verrez plus le message d'erreur comme indiqué ci-dessous.

$ /usr/local/nagios/libexec/check_nrpe -H 192.168.1.20 -c check_disk -a 60 80 /dev/sdb1
DISK OK - free space: / 111199 MB (92% inode=99%);| /=9319MB;101662;114370;0;127078

Avertissement de sécurité

L'activation des arguments de ligne de commande NRPE est un risque de sécurité. Si vous ne savez pas ce que vous faites, ne l'activez pas.

Vous avez probablement déjà compris que vous ne pouvez pas blâmer NRPE si quelque chose ne va pas. Après tout, vous avez défini dont_blame_nrpe sur 1.


Linux
  1. Comment effacer l'historique de la ligne de commande BASH sous Linux

  2. Comment arrêter ou redémarrer Linux à l'aide de la ligne de commande

  3. Passer les arguments de la ligne de commande au script Bash ?

  4. Comment les arguments de la ligne de commande distante Ssh sont-ils analysés ?

  5. Comment redémarrer Linux en utilisant la ligne de commande

Comment démarrer en ligne de commande Linux

Comment activer l'horodatage dans l'historique de Bash sous Linux

Comment vérifier la version du système d'exploitation avec la ligne de commande Linux

Comment extraire le fichier Tar.xz sur la ligne de commande Linux

Comment trouver une adresse IP dans la ligne de commande Linux

Comment lire les arguments de ligne de commande dans les scripts shell ?