即使 suders 条目指定了 NOPASSWD,sudo 仍会提示输入密码

即使 suders 条目指定了 NOPASSWD,sudo 仍会提示输入密码

我正在尝试让特定用户能够使用 sudo 运行两个命令,而无需输入密码。这就是我所做的:

# temporarily grant privs to nitsadmin
Cmnd_Alias REBOOT = /usr/sbin/reboot
Cmnd_Alias STOP_START_CRUSHFTP = /var/opt/Crushftp/crushftp_init.sh

nitsadmin ALL=(ALL) NOPASSWD: STOP_START_CRUSHFTP, REBOOT

reboot 命令完全按照预期工作,但 crushftp_init.sh 命令坚持要求输入密码。

帮助?

在回复第一条评论时,我所看到的是:

nitsadmin@dropbox:~$ sudo /var/opt/CrushFTP10/crushftp_init.sh stop
[sudo] password for nitsadmin: 

因此我很确定它sudo正在提示输入密码。

答案1

您可能需要更改:

Cmnd_Alias STOP_START_CRUSHFTP = /var/opt/Crushftp/crushftp_init.sh

到:

Cmnd_Alias STOP_START_CRUSHFTP = /var/opt/Crushftp/crushftp_init.sh*

/var/opt/Crushftp/crushftp_init.shsudoers 文件中的别名需要与命令的运行方式完全匹配。不是匹配/var/opt/Crushftp/crushftp_init.sh install

编辑:这将允许/var/opt/Crushftp/crushftp_init.sh使用 sudo 运行任何变体而无需密码。Cmnd_Alias STOP_START_CRUSHFTP = /var/opt/Crushftp/crushftp_init.sh stop如果您希望限制为仅停止等,则可以将别名更改为。

相关内容