如何防止 sudo 执行非 root 文件?

如何防止 sudo 执行非 root 文件?

我想阻止sudo执行不属于 root 的文件。

因此,为了允许 sudo 运行这样的文件,我希望该文件是:
chown root:root filename
chmod go-w filename

可以用sudo这种方式限制吗?

它也应该被图形化sudo的运行器(gksudo、kdesudo 等)继承,但我认为这可能太棘手了,但不确定。

答案1

这确实是一个有趣的想法,但并非没有问题。

您可以添加一个“semiadmin”组(您选择的名称),将用户放在该组中而不是“sudo”组中,然后/etc/sudoers使用通配符添加行以匹配 root 拥有的命令所在的常见位置:

%semiadmin (ALL)=/usr/bin/*,/bin/*,/sbin/*

这种方法的问题在于您还需要阻止某人使用任何编辑器(或visudo),或者让他们编辑他们的用户...如果他们可以这样做,他们就可以提升他们的权限。

简而言之,指定您希望他们使用哪些命令要容易得多。
您已清除漏洞的命令列表。

答案2

以非 root 文件的所有者身份登录,并使用此命令撤销其他用户的执行权限

chmod o-x filename

相关内容