我正在尝试使用NRPE插件configurationNagios命令来检查远程Windows主机上物理内存的状态。 我在Ubuntu Server v14.10上使用Nagios v3.0.6,以及最新的稳定版本的NSClient ++ 0.4.3。 这里是configuration文件的片段:
define command { command_name check_ph_mem command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -p 5666 -c CheckMEM -a MaxWarn=$ARG1$% MaxCrit=$ARG2$% ShowAl$ }
和
define service{ host_name remote-win-host service_description Check Memory NRPE check_command check_ph_mem use generic-service }
Nagios无法从这个命令中获取任何信息,因为当我执行
/usr/lib/nagios/plugins/check_nrpe -H 192.168.1.150
它会给出以下错误:
CHECK_NRPE: Error - Could not complete SSL handshake.
我试过用以下方法重新configurationC:\Program Files\NSClient++\nsclient.ini :
[/settings/NRPE/server] allow arguments = true allowed hosts = 192.168.1.15 port = 5666
但它会给出相同的错误。 我已经阅读了几十个类似的主题,尝试了不同的build议,但是我仍然有同样的问题。
你有什么想法如何解决这个问题?
如果您在Windows主机上使用NSCP-0.4.3.x(而不是NSCP-0.4.2.x),则基于证书的身份validation将成为默认身份validation方法。 这就是为什么你的支票没有工作。 要解决此问题,您需要将以下内容添加到您的configuration中:
[/settings/NRPE/server] insecure = true
之后,您需要重新启动NSClient ++服务。 更多信息可以在这里find(6.1什么是不安全模式)
在我的情况下,我不得不在下面添加:
; ALLOW INSECURE CHIPHERS and ENCRYPTION - Only enable this if you are using legacy check_nrpe client.
接下来的两行:
insecure = true allow arguments = true
并在下面更改:
; VERIFY MODE - Comma separated list of verification flags to set on the SSL socket
从
verify mode = peer-cert
至
verify mode = none
编辑你的nsclient.ini文件并设置参数如下,对我的工作:
[/settings/NRPE/server] allow arguments = 1 allow nasty_meta chars = 1 allowed hosts = 10.10.83.94,127.0.0.1 port = 5666 use SSL = 1 ssl options = no-sslv2,no-sslv3 verify mode = none insecure = true