第 8 章 Security

8.1. 更改核心加密组件

8.1.1. 默认应用系统范围的加密策略

Crypto-policies 是 Red Hat Enterprise Linux 8 中的一个组件,它配置核心加密子系统,包括 TLS、IPsec、DNSSEC、Kerberos 协议以及 OpenSSH 套件。它提供了一组小的策略,管理员可以使用 update-crypto-tancies 命令选择这些策略。

DEFAULT 系统范围的加密政策级别为当前的威胁模型提供了安全设置。它允许 TLS 1.2 和 1.3 协议以及 IKEv2 和 SSH2 协议。如果大于 2047 字节,则接受 RSA 密钥和 Diffie-Hellman 参数。

如需更多信息,请参阅红帽博客的 Red Hat Enterprise Linux 8 中的加密策略文章,以及 update-crypto-policies(8) man page。

8.1.2. 通过删除不安全的密码组合和协议,严格加密默认值

以下列表包含从 RHEL 8 中核心加密库中删除的密码套件和协议。它们没有存在于源中,或者其支持在构建期间被禁用,因此应用程序无法使用它们。

  • DES(自 RHEL 7)
  • 所有导出级密码套件(自 RHEL 7 开始)
  • 签名中的 MD5(自 RHEL 7 开始)
  • SSLv2(自 RHEL 7 开始)
  • SSLv3(自 RHEL 8 开始)
  • 所有 ECC curves < 224 字节(自 RHEL 6 开始)
  • 所有二 进制字段 ECC curves(自 RHEL 6 开始)

8.1.3. 所有策略级别禁用密码套件和协议

下面的密码套件和协议在所有 crypto 策略级别被禁用。它们只能通过单独应用程序的显式配置来启用。

  • DH 使用参数 < 1024 字节
  • 密钥大小 < 1024 字节的 RSA
  • Camellia
  • ARIA
  • SEED
  • IDEA
  • 只限加密套件
  • 使用 SHA-384 HMAC 的 TLS CBC 模式密码组合
  • AES-CCM8
  • 所有 ECC curves 与 TLS 1.3 不兼容,包括 secp256k1
  • IKEv1(自 RHEL 8 开始)

8.1.4. 将系统切换到 FIPS 模式

整个系统的加密策略包含 一 个政策级别,它可让您根据自由信息处理标准(FIPS)出版140-2 的要求对模块进行自我检查。启用或禁用 FIPS 模式的 fips-mode-setup 工具内部使用 FIPS 系统范围内的加密策略级别。

要在 RHEL 8 中将系统切换成 FIPS 模式,请输入以下命令并重启您的系统:

# fips-mode-setup --enable

详情请查看 fips-mode-setup(8) man page。

8.1.5. TLS 1.0 和 TLS 1.1 已弃用

TLS 1.0 和 TLS 1.1 协议在 DEFAULT 系统范围的加密策略级别被禁用。如果您的情况,比如 Firefox 网页浏览器中的视频联合应用程序需要使用过时的协议,请将系统范围的加密策略切换到 LEGACY 级别:

# update-crypto-policies --set LEGACY

如需更多信息,请参阅 RHEL 8 中的 Strong 加密默认值,以及红帽客户门户网站中的弱加密算法 知识库文章以及 update-crypto-policies(8) man page。

8.1.6. 加密库支持 TLS 1.3

在这个版本中,所有主要的后端加密库都默认启用传输层安全(TLS)1.3。这可在整个操作系统通讯层实现低延迟,并通过使用新的算法(如 RSA-PSS 或 X25519)来提高应用程序的隐私和安全性。

8.1.7. 在 RHEL 8 中弃用 DSA

Red Hat Enterprise Linux 8 中已弃用 Digital Signature Algorithm (DSA)。依赖于 DSA 密钥的身份验证机制在默认配置中不起作用。请注意,即使使用系统范围的 LEGACY 加密策略级别中,OpenSSH 客户端都不接受 DSA 主机密钥。

8.1.8. 在 NSS中弃用了SSL2 Client Hello

Transport Layer Security(TLS)协议版本 1.2 及更早版本允许与 客户端 Hello 信息建立协商,其格式与安全套接字层(SSL)协议版本 2 兼容。网络安全服务(NSS)库中对这个功能的支持已经被弃用,默认情况下是禁用的。

需要这个功能支持的应用程序需要使用新的 SSL_ENABLE_V2_compatible_HELLO API 启用它。以后的 Red Hat Enterprise Linux 8 版本中可以完全删除对这个功能的支持。

8.1.9. NSS 现在默认使用 SQL

网络安全服务(NSS)程序库现在默认为信任数据库使用 SQL 文件格式。DBM 文件格式在之前版本中作为默认数据库格式使用,它不支持多个进程对同 一 个数据库的并发访问,并在上游将其弃用。因此,使用 NSS 信任数据库来存储密钥、证书和撤销信息的应用程序现在默认使用 SQL 格式创建数据库。试图以旧的 DBM 格式创建数据库会失败。现有的 DBM 数据库是以只读模式打开的,它们会自动转换成 SQL 格式。请注意,自 Red Hat Enterprise Linux 6 之后,NSS 支持 SQL 文件格式。


为了尽快向用户提供最新的信息,本文档可能会包括由机器自动从英文原文翻译的内容。如需更多信息,请参阅此说明。