我的系统除了 /boot 之外都有全盘加密。我按照这篇文章设置了 GRUB 密码,但随后可以通过启动 Kali Live 并运行来禁用它:
mkdir /mnt/dev/sda2
sudo mount /dev/sda2 /mnt/dev/sda2
sudo vim /mnt/dev/sda2/grub/grub.cfg
3 个命令。十分简单。
如果用户可以物理访问计算机,则只会看到 GRUB 菜单或被要求输入 GRUB 密码(对吗?)。如果他们有物理访问权限,他们可以禁用 GRUB。如果用户无权访问 GRUB(即他们通过 ssh 连接或者这是一个虚拟机(因为 ssh 仅在 GRUB 完成后才启动,对吧?)),那么他们永远不会被它阻止。
因此,似乎在唯一使用 GRUB 密码的情况下,它也很容易被绕过。如果 GRUB 密码阻止了某人,他们可以禁用它。
那么,有什么意义呢? GRUB密码真如我想的那样没用吗?他们是否以其他方式提高安全性?如果我们将 /boot 加密加入其中会怎样?这会改善情况吗?
谢谢你!
按照这个逻辑,为什么要使用密码呢?毕竟,人们可以简单地将磁盘从一台计算机移动到另一台计算机并以 root 身份访问任何内容。用户或引导加载程序密码通常不是为了阻止数据访问而设计的,加密就是为了做到这一点而设计的。
GRUB 密码并不是限制已启动计算机的数据访问或修改。相反,它们作为更广泛的计算机锁定系统的一部分很有用。例如,您可以设置 BIOS/UEFI 密码以防止从未经授权的设备启动并限制对计算机的物理访问。 GRUB 密码通过防止未经授权的用户修改引导参数或选择不同的引导条目来增加额外的保护层。它们并非旨在作为保护机器的整体方法。
在真实的锁定场景中,您不仅拥有 GRUB 密码,而且还会限制(例如)引导不受信任或未经验证的设备。在这些情况下,引导加载程序密码可以带来实际的好处。