为 Icinga2 服务设置 sudo 权限

为 Icinga2 服务设置 sudo 权限

我在 3 台服务器上安装了 icinga2,所有服务器都使用 debian stretch。在一台服务器上,我运行着 glusterfs-Server,并想用 icinga2 监控它。我从 icinga2 网站下载了 check_cluster 服务/脚本。

为了使其工作,我需要 sudo 权限。我设置了它们,但在 icinga2 中只收到一条错误消息:

command = [ "/usr/bin/sudo", PluginDir + "/check_cluster -h 1 -c 2 -d 0,0,0" ]

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.

sudo: no tty present and no askpass program specified

用户的 sudo 权限为:(在 /etc/sudoers 中)

Defaults:nagios !requiretty
nagios ALL=(ALL:ALL) NOPASSWD: /usr/sbin/gluster
Cmnd_Alias CHECK_CLUSTER= /usr/lib/nagios/plugins/check_cluster
nagios ALL=(ALL) NOPASSWD: CHECK_CLUSTER

我不知道 nagio 用户是否有密码,也不知道这是否是问题所在。这是来自 /varlog/auth.log

sudo: pam_unix(sudo:auth): conversation failed
sudo: pam_unix(sudo:auth): auth could not identify password for [nagios]
sudo:   nagios : command not allowed ; TTY=unknown ; PWD=/ ; USER=root ; COMMAND=/usr/lib/nagios/plugins/check_cluster -h 1 -c 2 -d 0,0,0

我不想做的是,给予 nagios 完全的权限

nagios ALL=(ALL) NOPASSWD: ALL

我该怎么办?您建议我设置哪些权限?

答案1

尝试设置

Cmnd_Alias CHECK_CLUSTER=/usr/lib/nagios/plugins/check_cluster -h 1 -c 2 -d 0,0,0

因为这就是用户 nagios 尝试使用 sudo 执行的操作。

相关内容