如何仅向特定脚本文件授予 sudo 权限?

如何仅向特定脚本文件授予 sudo 权限?

我希望用户对特定目录(在我的情况下为)下的几个 shell 脚本拥有 sudo 权限(无需密码检查)/usr/local/tomcat7/bin,而对其他任何目录则无权访问。实现此目的的最简单方法是什么?

类似这样的事情/etc/sudoers似乎不起作用:

jsmith ALL=(ALL) NOPASSWD: /usr/local/tomcat7/bin

答案1

我认为你已经快到了。/在目录规范的末尾添加一个

jsmith ALL=(ALL) NOPASSWD: /usr/local/tomcat7/bin/

来自 sudoers 手册页

目录是以“/”结尾的完全限定路径名。当您在 Cmnd_List 中指定目录时,用户将能够运行该目录中的任何文件(但不能运行其中的任何子目录中的文件)。

答案2

在路径末尾添加斜杠“/”。

jsmith ALL=(ALL) NOPASSWD: /usr/local/tomcat7/bin/

相关内容