我如何强制任何尝试以单用户模式登录的人输入 root 密码?

我如何强制任何尝试以单用户模式登录的人输入 root 密码?

我在一台装有 Mate 桌面的 Ubuntu 14.04 LTS 机器上。

我参加了一门名为“Linux 安全与强化,实用安全指南”的 Stackskills 课程。

物理安全部分提到的第一个安全问题是 Single User Mode:据说如果有人可以物理访问机器,则可以切换单用户模式直接以 root 身份登录,而无需密码。

然后解释道,对于像 Ubuntu 16.04 及更高版本这样的系统,使用 systemd 而不是init来控制系统初始化过程,有必要在 中编辑/lib/systemd/system/emergency.service/lib/systemd/system/rescue.service更改。sushellsulogin

但是 Ubuntu 14.04 LTS 不使用这些文件,因为它使用 Upstart 而不是 systemd。我应该查看哪些文件?

我如何强制任何尝试以单用户模式登录的人输入 root 密码?

答案1

当系统启动进入“单用户模式”或“1”(也称为systemd)时,rescue.target您实际上是使用“root”用户登录,以用户拥有的最高权限修复系统问题。

因此,如果您希望 Ubuntu 在启动到“单用户模式”时要求您输入密码,那么您必须为“root”用户设置密码:

sudo passwd root

但是,当您可以物理访问系统时,您几乎可以对该系统做任何您想做的事情,例如,不是使用“单用户模式”,而是在启动时init=/bin/bash向内核发送如下参数:并重置“root”密码。

所以最好的选择是加密系统并锁定房间。


为了解决有关文件的问题,您必须安装带有 systemd 的版本,Ubuntu 16.04 及以上版本是当时支持的版本。

相关内容