有什么办法可以阻止某人以 root 身份运行 shell 吗?

有什么办法可以阻止某人以 root 身份运行 shell 吗?

这是我思考了很久并且认为不可能的问题。

是否可以防止机器管理员绕过sudo或的审核功能doas?例如,运行sudo su -并拥有 root shell?

我想真正的问题是,有没有办法审计根在机器上的活动?

答案1

是否可以防止机器管理员绕过 sudo 或 doas 的审核功能?

根据定义,管理员机器的完全访问权限一切在机器内,因此他们还能够停止审核过程、篡改审核日志文件等。

如果您需要监视/审核某人,请不要给他们 root 访问权限;相反,将用户添加到 sudoers 文件中,允许他们使用完成其职责所需的最少命令集。

答案2

我们可以在根上放一个插头:

sudo chsh root

并插上插头:/sbin/nologin/bin/false 必然带有sudo
警告:否则我们将无法将设置更改回来。

或者在我的 Fedora 系统上,有一个在登录时启动的脚本目录:/etc/profile.d。让我们创建一个脚本custom
安排身份验证:

if [ $UID -eq 0 ]; then
    exit
fi
ls -l /etc/profile.d/custom

-rw-r--r-- 1 root root ...

您还可以使用 删除该文件sudo并使用 执行其他命令sudo,但您将无法启动 shell:

sudo rm /etc/profile.d/custom

相关内容