是否可以为没有 sudo 访问权限的单个用户提供运行 sudo 受保护命令(如 )的能力chmod
?
答案1
须藤配置文件存储在/etc/sudoers
文件和/etc/sudoers.d
目录中。最好添加一个文件,与用户同名您想要将 sudo 设置为,尽管/etc/sudoers.d
您也可以编辑/etc/sudoers
.
基本语法是谁在哪里 = (as_whom) 什么
例如:
root ALL = (ALL:ALL) ALL
menas 允许用户root
在任何主机 (ALL = ) 上以任何用户:组 (ALL:ALL) 任何命令 (ALL) 的身份运行
对于您的情况,您需要执行以下操作:
echo "ltd_user ALL=NOPASSWD:/bin/cat, PASSWD:/bin/chmod" > /etc/sudoers.d/ltd_user
这赋予用户在任何主机上以任何用户身份ltd_user
运行cat
而无需输入密码以及输入密码后的权限chmod
创建文件后,/etc/sudoers.d
您应该将权限设置为 440
chmod 440 /etc/sudoers.d/ltd_user
另请注意,我给出了一个非常基本的示例(因此使用了 echo 和重定向),但使用visudo
命令编辑 sudo 配置文件是一种很好的做法,这可以确保一次只有一个人正在编辑该文件,并具有适当的权限,如果所做的更改存在语法错误,则拒绝写出文件并退出。
visudo -f /etc/sudoers.d/ltd_user
请参阅man sudoers
获取更多详细信息和高级示例