如何禁用对sudo命令的参数执行。我的助手们,测试,不要工作。我需要禁用参数-i。
test ALL = (ALL:ALL) ALL, !/usr/bin/sudo [!-]*
发布于 2022-11-30 11:44:17
我在Unix & Linux上找到了关于同样问题的答案。
从上述链接复制粘贴:对于您最初的问题,您需要排除/bin/bash
(或在/etc/passwd
中定义为用户shell的任何内容),如下所示:
tomk ALL= ALL,!/bin/su,!/bin/bash
然而,正如在对您的问题的评论中已经指出的,
sudo -s
或sudo -i
,也不会真正阻止他/她以根用户身份获得交互式shell。来自man sudoers
**:**
“!”的局限性运算符 从所有使用‘!’的命令中“减去”命令通常是无效的。操作符。用户可以通过将所需的命令复制到不同的名称,然后执行该命令来避免这种情况。例如: 比尔所有=所有,苏,炮弹 并不能真正阻止bill运行SU或shell中列出的命令,因为他可以简单地将这些命令复制到不同的名称,或者从编辑器或其他程序中使用shell转义。因此,这种限制充其量应该被视为咨询(并通过政策加以加强)。 一般来说,如果一个用户拥有所有功能,那么没有什么可以阻止他们创建自己的程序,给他们一个根shell (或者自己复制一个shell),而不管‘!’元素在用户规范中。
https://askubuntu.com/questions/1443235
复制相似问题