创建 Linux AMI 以支持 UEFI 安全启动
以下过程介绍如何创建您自己的 UEFI 变量存储,以便使用自定义私钥进行安全启动。从 AL2023 2023.1 版本开始,Amazon Linux 支持 UEFI 安全启动。有关更多信息,请参阅《AL2023 User Guide》中的 UEFI Secure Boot。
重要
以下用于创建 AMI 以支持 UEFI 安全启动的过程仅适用于高级用户。您必须对 SSL 和 Linux 发行版启动流程有足够的了解才能使用这些步骤。
先决条件
-
将使用以下工具:
-
OpenSSL – https://www.openssl.org/
-
efivar – https://github.com/rhboot/efivar
-
efitools – https://git.kernel.org/pub/scm/linux/kernel/git/jejb/efitools.git/
-
get-instance-uefi-data Amazon CLI 命令
-
-
您的 Linux 实例必须使用支持 UEFI 启动模式的 Linux AMI 启动,并且存在非易失性数据。
在 SetupMode
中创建了没有 UEFI 安全启动密钥的新创建的实例,从而使您能够注册自己的密钥。有些 AMI 预先配置了 UEFI 安全启动,您无法更改现有密钥。如果要更改密钥,您必须基于原始 AMI 创建新 AMI。
有两种方法可以在变量存储中传播密钥,这些方法在后面的选项 A 和选项 B 中进行说明。选项 A 描述了如何在实例内执行此操作,以模仿真实硬件的流程。选项 B 描述了如何创建二进制 Blob,然后在创建 AMI 时将其作为 base64 编码文件传递。对于这两种选项,您必须首先创建三个密钥对,它们将用于信任链。
要创建支持 UEFI 安全启动的 Linux AMI,请先创建三个密钥对,然后完成选项 A 或选项 B:
注意
这些说明只能用于创建 Linux AMI。如果您需要 Windows AMI,请使用受支持的 Windows AMI 之一。有关更多信息,请参阅《适用于 Windows 实例的 Amazon EC2 用户指南》中的启动支持 UEFI 安全启动的实例。