我在一台装有 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
更改。sushell
sulogin
但是 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 及以上版本是当时支持的版本。