我想阻止普通用户使用以下命令
- /bin/bash
- /usr/bin/sudo
- /bin/su
我将它们添加到 sudoers 文件中,但普通用户仍然可以使用以下命令 这就是我在 Sudoers 文件中添加条目的方法
Cmnd_Alias NOTALLOWED = /bin/sh、/bin/bash、/usr/bin/sudo、/bin/su
只有 /bin/bash 正在工作,除此之外 sudo 和 su 不工作,用户可以切换
答案1
你的问题有点令人困惑。我认为您想阻止用户以 root 身份运行命令。如果那是你想要的:
- 不要给他们 root 密码。如果他们已有 root 密码,请更改它。
- 不允许他们使用
sudo
root 身份运行命令。从文件中删除它们suoders
。
禁止用户运行一些命令,例如su
和bash
,同时允许用户运行是完全没有用的。他们将能够运行数百个命令中的任何一个,这些命令允许运行其他命令(、、、、sh
... )。您无法通过将一些命令列入黑名单来获得任何额外的安全性。如果您不希望允许用户以 root 身份运行命令,请不要允许他们以 root 身份运行命令:将它们保留在文件之外,或者只允许仔细选择的一组命令,这些命令不能提供执行命令的方法。运行 shell 或覆盖任意文件。env
perl
vi
nethack
gcc
sudoers
可以设置一个轮组这样,只有该组中的用户才能通过运行成为 root su
,即使他们知道 root 密码。然而,这并不是很有用,因为知道 root 密码的用户可以使用login
.同样,如果有些用户知道 root 密码但不应该知道,这就是您需要解决的问题。
答案2
既然就 uid 和 gid 而言它们属于 root,那么您不能只使用chmod 750
它们吗?