28 确保符合 FIPS 140-3 标准 #
FIPS 140-3 是一个安全认证程序,用于验证私营公司生产的加密模块。联邦信息处理标准 (FIPS) 140 版本是美国国家标准与技术研究院 (NIST) 为确保加密模块的质量而制定的一系列计算机安全标准。
如果您的组织要为美国联邦政府履行任何责任,那么,您的加密应用程序(例如 openSSL、GnuTLS 和 OpenJDK)可能需要符合联邦信息处理标准 (FIPS) 140-3。如果合规性规则不要求您的组织以 FIPS 模式运行 SUSE Linux Enterprise,则最好不要以这种模式运行。本章提供有关启用 FIPS 模式的指导,以及包含详细信息的资源的链接。
相关二进制文件目前正在进行 FIPS 140-3 认证。在获得认证之前,无法保证完全符合 FIPS 140-3 标准。
28.1 FIPS 概览 #
开发和维护加密应用程序并想要测试其 FIPS 合规性的每家供应商必须将其提交到加密模块验证程序 (CMVP)(请参见 https://csrc.nist.gov/projects/cryptographic-module-validation-program)。
最新的 FIPS 140-3 标准已于 2019 年 3 月获得批准并取代了 140-2。
28.2 何时启用 FIPS 模式 #
FIPS 的管理非常复杂,需要具备丰富的专业知识。正确实施、测试 FIPS 以及对其进行查错都需要很高的知识水平。
请仅在需要满足合规性规则时,才以 FIPS 模式运行 SLED。否则,我们不建议以 FIPS 模式运行您的系统。
下面是不建议使用 FIPS 模式的一些原因(如果没有明确的要求):
FIPS 有约束性。它强制要求使用经验证的特定加密算法,并强制要求使用实现这些经验证算法的特定已认证二进制文件。您只能使用已认证的二进制文件。
升级可能会破坏功能。
审批过程非常漫长,因此已认证的二进制文件始终比最新版本要落后几个版本。
已认证的二进制文件(例如 ssh、sshd 和 sftp-server)会在启动时运行自检,并仅在这些检查成功时才会运行。这会导致性能小幅下降。
FIPS 的管理非常复杂,需要具备丰富的专业知识。
28.3 Samba/CIFS 不支持 MD5 #
根据 FIPS 标准,MD5 不是安全的哈希算法,不得将它用于身份验证。如果您的网络环境符合 FIPS 要求,并且您的客户端或服务器以符合 FIPS 要求的模式运行,您必须使用 Kerberos 服务对 Samba/CIFS 用户进行身份验证。之所以必须这样做,是因为所有其他 Samba 身份验证模式都包含 MD5。
28.4 更多信息 #
有关详细信息,请参见:
Man 8
fips-mode-setup
Man 8
fips-finish-install
Man 7
crypto-policies
Man 8
update-crypto-policies