LUKS 全盘加密,包括预安装中的 /boot 分区

LUKS 全盘加密,包括预安装中的 /boot 分区

我正在尝试为我的 ubuntu 环境中的用户带来类似 bitlocker 的体验。我部署了一个预置的 ubuntu 20.04 安装,目前在根和其他文件系统上有一个有效的磁盘加密方案。/、/var、/usr、/swap 和 /home 都在一个 lvm 卷组中,启用了 luks 并通过 clevis 自动解锁。我还想加密 grub/boot 分区,此时我能够成功地将启动分区移动/复制到 lvm 并对其进行加密,或者只是将其转换为 lvm 之外启用 luks 的分区。

但是这会导致 grub 不提示输入密码并且无法在启动时加载,我猜这是因为磁盘在启动时仍被锁定。是否有一些中间步骤(引导加载程序?)应该加载加密的 grub 分区并解锁它?是否需要 EFI/安全启动才能完成此操作,或者加密的启动分区是否可以与旧版 bios 一起使用?

我一直在遵循这个指南这里将启动分区复制/移动到加密分区。指南最初编写时,grub 似乎仅支持 luks1 加密分区,不过似乎已经添加了 luks2 支持

我感谢任何指导。

更新

经过进一步调查后,我发现如果我仅加密 /boot 分区而不加密 /boot/efi 分区,则在启动期间会提示我输入密码。

我的磁盘布局现在是这样的。

lsblk -o NAME,FSTYPE,MOUNTPOINT /dev/nvme0n1
NAME                        FSTYPE      MOUNTPOINT
nvme0n1                                 
├─nvme0n1p1                 vfat        /boot/efi
├─nvme0n1p2                 crypto_LUKS 
│ └─boot_crypt              ext4        /boot
└─nvme0n1p3                 crypto_LUKS 
  └─nvme0n1p3_crypt         LVM2_member 
    ├─encrypted--lvm-root   ext4        /
    ├─encrypted--lvm-var    ext4        /var
    ├─encrypted--lvm-swap_1 swap        [SWAP]
    ├─encrypted--lvm-tmp    ext4        /tmp
    └─encrypted--lvm-home   ext4        /home

我应该加密 EFI 分区吗?还是必须解密才能解锁包含 grub 的分区?这是否可以防止任何潜在的“邪恶女仆”攻击?或者是否存在一些潜在的安全漏洞,尤其是在当前未启用安全启动的情况下?

相关内容