Nagios:使用相同的命令.cfg文件为不同的主机configuration不同的用户

我在unix环境中使用check_by_ssh来执行Nagios插件。 less数主机有一个不同的unix帐户,Nagios需要ssh来运行插件。 我通过这样的-l传递帐户名称:

command_line $USER1$/check_by_ssh -p 22 \ -H $HOSTADDRESS$ -l <user> -i /home/nagios/.ssh/$HOSTNAME$ -C '<plug-in path>' 

对于具有不同unix帐户的机器,有没有办法使所有命令定义翻倍,例如用-l user1replace-l nagios?

我希望有一种方法可以在主机定义中传递用户名,表示这组主机应该用user1login,而另一组主机应该用user2。

任何帮助表示赞赏。

谢谢

注意:我没有testing这个代码。

也就是说,我可能会在commands.cfg中定义一个替代检查,其中包含以下内容:

 # Check by SSH for hosts with different account command_line $USER1$/check_by_ssh_alt -p 22 \ -H $HOSTADDRESS$ -l $ARG1$ -i /home/nagios/.ssh/$HOSTNAME$ -C '<plug-in path>' 

然后用像这样的东西调用它:

 define service{ use generic-service hostgroup_name hostgroup_1 service_description Some Check by SSH contacts hostgroup_1_admins notification_options w,c,r notification_period 24x7 notification_interval 0 check_command check_ssh_alt!user1 } 

祝你好运!