正确的点。
NRPE.CFG修改:
添加Nagios主机允许:
allowed_hosts = 127.0.0.1,192.168.1.10
在command_prefix=/usr/bin/sudo
前删除了#
之后,我已经重新加载服务。
/etc/init.d/nagios-nrpe-server重新启动
我也编辑过/etc/sudoers
#用户权限规范 根ALL =(ALL:ALL)ALL nagios ALL = NOPASSWD:/ usr / lib / nagios / plugins /
运行:
$ ./check_users -w 5 -c 10 用户行 - 1个用户当前login|用户= 1; 5; 10; 0
作品,我得到我的结果
运行:
su nagios -c“./check_users -c 2 -w 2”
没有任何解决办法。
从Nagios主机到新的远程系统,我可以运行:
check_nrpe -H 192.168.1.20
结果我得到了NPRE v2.12
。
我已经检查过Nagios是所有者的插件文件夹,但仍然没有去。
任何提示将有所帮助。
(是的,我已经search了一个10-20线程,但仍然没有去)
在我看来,您的sudoers
文件中没有“requiretty”行,请确保您有以下行:
Defaults:nagios !requiretty
这意味着,只有nagios用户不需要有一个tty运行一个命令,这就是为什么我怀疑你的命令失败。
如果你不确定哪个用户运行nagios,你可以在configuration文件中检查它,通常位于/etc/nagios/nrpe.cfg
。
如果我遇到过这个问题,我想首先确保nagios用户能够成功运行该命令,为了做到这一点,我将启用nagios用户login到机器的能力,通过编辑它在/etc/passwd
来自:
nagios:x:113:120::/var/lib/nagios:/bin/false
至:
nagios:x:113:120::/var/lib/nagios:/bin/bash
然后,我会su - nagios
继续我的故障排除,然后,在解决问题后,我会将此行更改回/bin/false
。
请检查在重新启动服务时nrpe进程是否完全被终止 。 我曾经有同样的问题。 使用:
ps -ef | grep nrpe
检查过程是否仍在运行,然后:
kill -9 `ps -ef | grep nrpe | awk '{print $2}'`
命令手动杀死它。
你能够成功执行与sudo的check_users(作为用户运行nrpe)? 即。
sudo ./check_users -c 2 -w 2
CentOS有没有必要在sudoers文件的最前面? 如果是这样,这可能是罪魁祸首。 您可以尝试暂时全局禁用它,或者只是禁用它为nagios用户。
可能与nagios用户有关的问题。 请检查nagios用户是否有权执行插件。
插件的权限应该是这样的:
rwxr-xr-x 1 nagios nagios 163831 May 30 2016 check_users