最近,我的一个朋友来我家,不到 15 分钟,他就使用 Live CD 破解了我的帐户,并在我面前重置了密码。看到这样的事情,我感到很困惑。请指导我,防止将来再次使用 Live CD 进行此类尝试。
答案1
手持棒球棒站在电脑旁。严惩靠近的人。
或者将其锁起来。
如果您的计算机可物理访问,则它是不安全的。
答案2
一个快速简便的方法是在 BIOS 中禁用从 CD 和 USB 记忆棒启动并设置 BIOS 密码。
根据这个维基页面:
设置密码或锁定菜单项(在 Grub 配置文件中)并不能阻止用户使用在 grub 命令行输入的命令手动启动。
但是,没有什么可以阻止某人窃取您的硬盘并将其安装在另一台机器上,或通过取出电池重置您的 BIOS,或者攻击者在物理访问您的机器时可以使用的其他方法。
更好的方法是加密您的驱动器,您可以通过加密您的主目录或加密整个磁盘来实现:
答案3
首先警告...
grub2 密码保护过程可能相当棘手,如果你弄错了,可能会让你的系统无法启动。因此总是首先对硬盘进行完整映像备份。我的建议是使用克隆兹拉- 其他备份工具,例如部分图像也可以使用。
如果您想练习这一点 - 请使用可以回滚快照的虚拟机客户机。
让我们开始
以下步骤可防止在启动时未经授权编辑 Grub 设置 - 即,按下e编辑按钮可更改启动选项。例如,您可以强制启动到单用户模式,从而访问您的硬盘。
此过程应与硬盘加密和安全的 BIOS 启动选项结合使用,以防止从实时 CD 启动,如该问题的相关答案中所述。
下面几乎所有内容都可以一次复制并粘贴一行。
首先让我们备份将要编辑的 grub 文件 - 打开一个终端会话:
sudo mkdir /etc/grub.d_backup
sudo cp /etc/grub.d/* /etc/grub.d_backup
让我们为 grub 创建一个用户名:
gksudo gedit /etc/grub.d/00_header &
滚动到底部,添加一个新的空行并复制并粘贴以下内容:
cat << EOF
set superusers="myusername"
password myusername xxxx
password recovery 1234
EOF
在此示例中,创建了两个用户名:我的用户名和恢复
接下来 - 导航回终端(不要关闭gedit
):
仅限 Natty 和 Oneiric 用户
通过输入生成加密密码
grub-mkpasswd-pbkdf2
输入您将在提示时使用两次的密码
Your PBKDF2 is grub.pbkdf2.sha512.10000.D42BA2DB6CF3418C413373CD2D6B9A91AE4C0EB4E6AA20F89DFA027CA6E6CBF3542CB39E951607E9D651D82700AF47884929BDD193E36CB262CC96201B5789AA.1A9B0033928E3D3D0338583A5BF13AF7D5CC6EC5A41456F8FE8D8EBEB7A093CD0A0CE8688949E6007188ECB3FB0FF916F258602D130CF5C8525FB318FBBE2646
我们感兴趣的部分开始grub.pbkdf2...
和结束BBE2646
使用鼠标突出显示此部分,右键单击并复制。
切换回您的gedit
应用程序 - 突出显示文本“xxxx”并将其替换为您复制的内容(右键单击并粘贴)
即该行应该看起来像
password myusername grub.pbkdf2.sha512.10000.D42BA2DB6CF3418C413373CD2D6B9A91AE4C0EB4E6AA20F89DFA027CA6E6CBF3542CB39E951607E9D651D82700AF47884929BDD193E36CB262CC96201B5789AA.1A9B0033928E3D3D0338583A5BF13AF7D5CC6EC5A41456F8FE8D8EBEB7A093CD0A0CE8688949E6007188ECB3FB0FF916F258602D130CF5C8525FB318FBBE2646
所有 buntu 版本 (lucid 及以上版本)
保存并关闭文件。
最后,你需要密码保护每个 grub 菜单项(所有文件以以下行开头菜单项):
cd /etc/grub.d
sudo sed -i -e '/^menuentry /s/ {/ --users myusername {/' *
这将为--users myusername
每一行添加一个新条目。
运行 update-grub 重新生成 grub
sudo update-grub
当你尝试编辑 grub 条目时,它会询问你的用户名,即我的用户名以及您使用的密码。
重新启动并测试在编辑所有 grub 条目时是否强制使用用户名和密码。
注意:请记住SHIFT在启动时按下以显示您的 grub。
所有上述问题都可以通过使用恢复模式轻松解决。
幸运的是,您还可以强制使用用户名和密码来使用恢复模式菜单项。在本回答的第一部分中,我们创建了一个名为恢复密码为1234。要使用此用户名,我们需要编辑以下文件:
gksudo gedit /etc/grub.d/10_linux
更改行:
printf "menuentry '${title}' ${CLASS} {\n" "${os}" "${version}"
到:
if ${recovery} ; then
printf "menuentry '${title}' --users recovery ${CLASS} {\n" "${os}" "${version}"
else
printf "menuentry '${title}' ${CLASS} {\n" "${os}" "${version}"
fi
使用恢复时使用用户名恢复和密码1234
运行sudo update-grub
以重新生成 grub 文件
重新启动并测试在尝试启动到恢复模式时是否要求输入用户名和密码。
答案4
简而言之,您需要:
- 最重要的是:使用 luks 进行全盘加密。这可以保护硬件存储提取和启动到外部 CD-ROM/USB 的攻击。加密主目录是不够的。
- 设置 BIOS 密码。这很重要,因为 /boot 仍未加密,而且当您将密码存储在 TPM 中时,这一点更为重要。
- 可选:设置 GRUB 密码。