我有一个堡垒服务器,可以访问 50 台运行不同 Linux 系统的机器。我还有一个单独的 Nagios 服务器,可以访问堡垒机。是否可以通过 ssh 隧道通过以下方式监控 50 台机器:
Nagios 盒 - [ssh 隧道] -> 堡垒盒 - [ssh 隧道 1....50] - Linux 机器
Nagios 盒子与 50 台主机之间没有其他直接连接。
答案1
checkcommands.cfg
在“标准”配置中使用$HOSTADRESS 参数调用多个 check_commands ,如下所示:
/usr/lib/nagios/plugins/check_ping -H 10.1.1.2 -w 100.0,20% -c 500.0,60% -p 5
/usr/lib/nagios/plugins/check_nrpe -H 10.1.1.3 -c checkMEM -a ShowAll type=physical type=page type=virtual MaxWarn=90% MaxCrit=95%
所以实际的文件:
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
您可以在这里定义类似的内容(尚未测试过):
define command{
command_name check_nrpe
command_line ssh $HOSTADDRESS$ "$USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$"
}
或者你编写一个(非常)丑陋的黑客程序,为 /usr/lib/nagios/check_nrpe` 下的几个命令创建一个 shell 包装器/usr/lib/nagios/plugins/´, namely
,然后在 Debian 中进行转移。
您可能需要比这更多的改变;如果您在 ssh 或类似之上执行 nrpe,则不需要 SSL。