Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux sudoers允许命令使用一个选项-拒绝使用其他选项_Linux_Sudo_Sudoers - Fatal编程技术网

Linux sudoers允许命令使用一个选项-拒绝使用其他选项

Linux sudoers允许命令使用一个选项-拒绝使用其他选项,linux,sudo,sudoers,Linux,Sudo,Sudoers,我正在寻找以下问题的解决方案: 允许在sudoers文件中使用选项a执行命令,但拒绝使用选项B执行同一命令: 例如: 允许这样做: sudo my_命令选项a 请允许这样做: sudo my_命令选项B 这可能吗?您可以轻松指定允许哪些参数 例如,我有一个用户testuser。您必须编辑的文件是/etc/sudoers,但请记住使用visudo命令进行编辑-它会验证文件的内容,因此您不会因为打字错误而无法再次使用(有时这是访问根帐户的唯一方法) 因此,输入visudo 比方说,我希望允许测试运行

我正在寻找以下问题的解决方案:

允许在sudoers文件中使用选项a执行命令,但拒绝使用选项B执行同一命令:

例如: 允许这样做: sudo my_命令选项a

请允许这样做: sudo my_命令选项B


这可能吗?

您可以轻松指定允许哪些参数

例如,我有一个用户
testuser
。您必须编辑的文件是
/etc/sudoers
,但请记住使用
visudo
命令进行编辑-它会验证文件的内容,因此您不会因为打字错误而无法再次使用(有时这是访问根帐户的唯一方法)

因此,输入
visudo

比方说,我希望允许测试运行
/bin/yes--help
。我无权为root以外的任何其他用户
x
it

您要添加的内容是:

testuser ALL=(ALL) /bin/yes --help
这意味着
testuser
可以作为任何用户从任何主机运行
/bin/yes--help
。默认情况下,
sudo/bin/yes--help
将询问
testuser
的密码
sudo/bin/yes
将拒绝
访问

如果要在不提供密码的情况下允许,请将该行替换为:

testuser ALL=(ALL) NOPASSWD: /bin/yes --help

请注意,您不能显式地拒绝参数。如果
testuser
是默认sudoers组的成员,此方法将不起作用。

我已经回答了您的问题,但请记住,它更多地属于serverfault.com或superuser.com。谢谢…似乎起作用。我将测试命令选项中的警告。谢谢你的帮忙!如果它对你来说很好,请接受我的回答:)如果不行,请编辑你的问题并在这里添加评论,这样我会得到通知。