21.8. 通过在 MOK 列表中添加公钥在目标系统中注册公钥
				您必须在系统上验证您的公钥以进行内核或内核模块访问,并将其注册到目标系统的平台密钥环(.platform)中。当 RHEL 9 在启用了安全引导的基于 UEFI 的系统上引导时,内核会从 db 密钥数据库导入公钥,并从 dbx 数据库排除已撤销的密钥。
			
				Machine Owner Key (MOK)工具允许扩展 UEFI 安全引导密钥数据库。当在启用了安全引导的启用了 UEFI 的系统上引导 RHEL 9 时,MOK 列表上的密钥与安全引导数据库中的密钥一起被添加到平台密钥环(.platform)中。MOK 密钥的列表以同样的方式被安全且持久地存储,但它是独立于安全引导数据库的工具。
			
				MOK 工具被 shim、MokManager、GRUB 和为基于 UEFI 的系统启用安全密钥管理和身份验证的 mokutil 工具支持。
			
要在您的系统上获得内核模块的身份验证服务,请考虑请求您的系统厂商将公钥合并到其工厂固件镜像中的 UEFI 安全引导密钥数据库中。
先决条件
- 您已生成了一个公钥和私钥对,并了解公钥的有效日期。详情请参阅生成公钥和私钥对。
步骤
- 将您的公钥导出到 - sb_cert.cer文件中:- certutil -d /etc/pki/pesign \ -n 'Custom Secure Boot key' \ -Lr \ > sb_cert.cer- # certutil -d /etc/pki/pesign \ -n 'Custom Secure Boot key' \ -Lr \ > sb_cert.cer- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 将您的公钥导入到 MOK 列表中: - mokutil --import sb_cert.cer - # mokutil --import sb_cert.cer- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 输入此 MOK 注册请求的新密码。
- 重启机器。 - shim引导装载程序会注意到待处理的 MOK 密钥注册请求,并启动- MokManager.efi,以使您从 UEFI 控制台完成注册。
- 选择 - Enroll MOK,在提示时输入之前与此请求关联的密码,并确认注册。- 您的公钥已添加到 MOK 列表中,这是永久的。 - 密钥位于 MOK 列表中后,它将会在启用 UEFI 安全引导时自动将其传播到此列表上的 - .platform密钥环中。