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