web-dev-qa-db-ja.com

NRPEを介したcheck_vmfs.shの実行を許可が拒否されました

nagios監視システムがすでに実行されており、次を使用してvmwareデータストアを監視した後 プラグイン vmware cliをインストールし、問題なくテストしました。

[root@nrpe-relay ~]# /usr/lib64/nagios/plugins/check_vmfs.sh -C /usr/lib64/nagios/plugins/vmware_esxi_conf.txt -S 192.168.20.241 -V /vmfs/volumes/LocalSlot45S6 -w 75 -c 90 -u Gb
WARNING - /vmfs/volumes/LocalSlot45S6 - total: 931.25 Gb - used: 800.95 Gb (86%)- free: 130.29 Gb (14%) | /vmfs/volumes/LocalSlot45S6=800.95Gb;698.43;838.12;;931.25

[root@nrpe-relay ~]# ps auxww|grep nrpe
nagios    1463  0.0  0.1  41468  1364 ?        Ss   21:24   0:00 nrpe -c /etc/nagios/nrpe.cfg -d
root      2261  0.0  0.0 103304   876 pts/0    S+   22:00   0:00 grep nrpe

ただし、コマンドをリモートで実行すると、同じ値が得られません。

[root@nagios nagios]# /usr/lib64/nagios/plugins/check_nrpe -H <hostname> -c 'check_datastore_LocalSlot45S6'
CRITICAL -

これは私のcfgファイルにあるものです

command[check_datastore_LocalSlot45S6]=/usr/lib64/nagios/plugins/check_vmfs.sh -C /usr/lib64/nagios/plugins/vmware_esxi_conf.txt -S 192.168.20.241 -V /vmfs/volumes/LocalSlot45S6 -w 75 -c 90 -u Gb

と私のサーバーcfg:

define service{
    use                     generic-service 
    Host_name               <hostname>
    service_description     datastore-LocalSlot45S6
    check_command           check_nrpe!check_datastore_LocalSlot45S6
    }

これは私が/ var/log/messageから見ることができるものです:

nagios nagios: EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;<hostname>;datastore-LocalSlot1-2S3;1441798845

質問:問題がどこにあるかについて誰かが何か手がかりを持っていますか?または、どうすればこの問題を追跡できますか?

問題は、NRPEデーモンがユーザーnagiosとして実行され、そのユーザーが問題のコマンドを実行する権限を持っていないことです。

どちらかユーザーが実行できるようにアクセス許可を開く必要があります(ちなみに、最後のコメントは、出力に完全に注意を払っていないことを示しています。これは/usr/lib64/nagios/plugins/check_vmfs.err上のファイルです。 check_vmfs.sh)ではなく、どの権限が拒否されたか、またはパスワードなしのSudoを使用するようにNRPEdを変更します。

command[check_datastore_LocalSlot45S6]=Sudo /usr/lib64/nagios/plugins/check_vmfs.sh -C /usr/lib64/nagios/plugins/vmware_esxi_conf.txt -S 192.168.20.241 -V /vmfs/volumes/LocalSlot45S6 -w 75 -c 90 -u Gb

に類似したsudoersエントリと組み合わせて

nagios  ALL=(root) NOPASSWD: /usr/lib64/nagios/plugins/check_vmfs.sh

後者のルートをとる場合は、

Defaults    !requiretty

sudoersファイル(まだ存在しない場合)。

3
MadHatter