Menu Close
Settings Close

Language and Page Formatting Options

Red Hat Training

A Red Hat training course is available for RHEL 8

3.7. 通过在 MOK 列表中添加公钥在目标系统中注册公钥

当 RHEL 8 在启用了安全引导机制的基于 UEFI 的系统中引导时,内核会将系统密钥环 (.builtin_trusted_keys) 加载到安全引导 db 密钥数据库中的所有公钥中。同时,内核排除 dbx 数据库中已撤销的密钥。以下小节描述了在目标系统上导入公钥的不同方式,以便系统密钥环 (.builtin_trusted_keys) 能够使用公钥来验证内核模块。

Machine Owner Key (MOK) 功能可以用来扩展 UEFI 安全引导密钥数据库。当 RHEL 8 在启用了安全引导机制的启用了安全引导的系统中引导时,MOK 列表中的密钥除密钥数据库中的密钥外也会添加到系统密钥环 (.builtin_trusted_keys) 中。和安全引导数据库密钥相似,MOK 列表密钥会被安全地永久存储。但它们是两个独立的工具。MOK 工具由 shim.efiMokManager.efigrubx64.efimokutil 实用程序支持。

注册 MOK 密钥需要用户在每个目标系统中在 UEFI 系统控制台上手动互动。MOK 工具为测试新生成的密钥对以及与其签注的内核模块提供了方便的方法。

流程

  1. 请在 MOK 列表中添加您的公钥:

    # mokutil --import my_signing_key_pub.der

    会要求您输入并确认此 MOK 注册请求的密码。

  2. 重启机器。

    待处理的 MOK 密钥注册请求将由 shim.efi 通知,它将启动 MokManager.efi,以便您从 UEFI 控制台完成注册。

  3. 选择"注册 MOK",并在系统提示时输入您之前与此请求关联的密码并确认注册。

    您的公钥已添加到 MOK 列表中,这是永久的。

密钥位于 MOK 列表中后,它会在启用 UEFI 安全引导时自动传播到此列表中的系统密钥环,并在随后引导时自动传播到系统密钥环。

注意

为了便于对系统中的内核模块进行身份验证,请您的系统供应商将公钥合并到其工厂固件镜像中的 UEFI 安全引导密钥数据库中。