SafeBoot:安全引导Linux

2020-05-12 22:00:47

仅引导系统所有者授权的代码(通过为内核和initrd安装硬件保护的平台密钥)。

简化加密磁盘引导过程(通过将密钥存储在TPM中,并且仅在固件和配置未修改时才将其解封)。

减少受攻击面(通过启用Linux内核功能来启用硬件保护功能并取消root帐户的特权)。

保护运行时系统完整性(通过使用dmverity和签名根散列从只读根启动(可选))。

稍微安全一点的Headers固件是用户自由的更好选择,因为它用开源取代了专有固件。然而,Heads和LinuxBoot只支持有限数量的主板和系统,而SafeBoot的主要目的是与现有的商用硬件和UEFI SecureBoot机制以及相对普通的Linux发行版一起工作。

问题是,为UEFI安全引导配置所有部分、在硬件令牌中生成密钥、签名内核以及将LUKS磁盘加密与TPM集成是非常复杂的。有许多指南介绍了这个过程的各个部分,但它们中的大多数都非常细粒度,需要太多的步骤才能完成。

最终用户需要一个工具来将他们日常需要的所有复杂操作打包成几个操作:为新内核签名、在引导时解密磁盘、保护系统免受运行时攻击者的攻击,等等。SafeBoot就是这个工具(的早期版本)!