3.7. 通过自定义系统范围的加密策略来禁用 SHA-1
因为 SHA-1 哈希函数本身存在弱设计,并且升级加密分析使其容易受到攻击,所以 RHEL 8 默认不使用 SHA-1。然而,一些第三方应用程序(如公共签名)仍然使用 SHA-1。要在您系统的在签名算法中禁用 SHA-1,您可以使用 NO-SHA1
策略模块。
重要
NO-SHA1
策略模块只在签名中禁用 SHA-1 哈希函数,而在其它地方不禁用。特别是,NO-SHA1
模块仍然允许使用带有基于哈希消息验证代码(HMAC)的 SHA-1 。这是因为 HMAC 安全属性不依赖于相应哈希功能的冲突性,因此最近对 SHA-1 的攻击会对 HMAC 使用 SHA-1 的影响显著降低。
如果您的场景需要禁用特定的密钥交换(KEX)算法组合,例如 diffie-hellman-group-exchange-sha1
,但您仍希望在其他组合中使用相关的 KEX 和 算法,请参阅以下步骤在 SSH 中禁用 diffie-hellman-group1-sha1 算法。
注意
RHEL 8.3 提供了禁用 SHA-1 的模块。RHEL 8.2 提供了对系统范围加密策略的自定义。
流程
将您的策略调整应用到
DEFAULT
系统范围加密策略级别:# update-crypto-policies --set DEFAULT:NO-SHA1
要使您的加密设置对已经运行的服务和应用程序有效,请重启系统:
# reboot
其它资源
-
您系统的
update-crypto-policies (8)
手册页中的 自定义策略 部分 -
系统上的
crypto-policies (7)
手册页中的加密策略定义格式
部分 - 如何在 RHEL 中自定义加密策略 红帽博客。