Menu Close
Settings Close

Language and Page Formatting Options

Red Hat Training

A Red Hat training course is available for RHEL 8

3.3. 使用 X.509 密钥验证内核模块的要求

在 RHEL 8 中,加载内核模块时,内核会根据内核系统密钥环 (.builtin_trusted_keys) 和内核平台密钥环 (.platform) 中的公共 X.509 密钥检查模块的签名。.platform 密钥环包含来自第三方平台提供商和自定义公钥的密钥。内核系统 .blacklist 密钥环中的密钥不包括在验证中。以下小节提供了系统中不同源的密钥、密钥环和载入密钥示例概述。此外,您还可以了解如何验证内核模块。

您需要满足某些条件,才能在启用了 UEFI 安全引导功能的系统中载入内核模块。

如果启用了 UEFI 安全引导,或者指定了 module.sig_enforce 内核参数:

  • 您只能加载那些签名是通过系统密钥环 (.builtin_trusted_keys) 和平台密钥环 (.platform) 验证的已签名内核模块。
  • 公钥不能在系统中被撤销的密钥环 (.blacklist)。

如果禁用了 UEFI 安全引导且未指定 module.sig_enforce 内核参数:

  • 您可以加载未签名的内核模块和签名的内核模块,而无需公钥。

如果系统不基于 UEFI,或者禁用 UEFI 安全引导:

  • 只有内核中嵌入的密钥才会加载到 .builtin_trusted_keys.platform
  • 您无法在不重新构建内核的情况下添加这组密钥。

表 3.2. 加载内核模块的验证要求

模块已签名找到公钥,且签名有效UEFI 安全引导状态sig_enforce模块载入内核污点

未签名

-

未启用

未启用

成功

未启用

Enabled

Fails

-

Enabled

-

Fails

-

已签名

未启用

未启用

成功

未启用

Enabled

Fails

-

Enabled

-

Fails

-

已签名

未启用

未启用

成功

未启用

Enabled

成功

Enabled

-

成功