作者:来自 Elastic Fabio Busatto
想体验一下 Elastic Cloud 吗?订阅 AWS Marketplace 上的 Elastic Cloud 或 Microsoft Azure Marketplace 上的 Elastic Cloud,即可获得最高 1,000 美元的账单抵扣额度。
最新的美国国家标准与技术研究院( NIST )加密标准已在 Elastic 9.4 中得到完全支持,因此你的合规安全态势和你的软件可以同步向前发展。
FIPS 140-3 对 Elasticsearch 和 Kibana 的支持已在 Elastic 9.4 中面向自管理部署正式发布。NIST 已停止接受新的 FIPS 140-2 提交,现有证书将在 2026 年 9 月逐步失效。你的基础设施中的每一层都需要跟进,而你的搜索和分析平台也不例外。联邦项目、国防集成商和受监管企业正在积极将采购要求转向 140-3。有了 Elastic 9.4,你的技术栈可以回答“是”。
两个问题,一个截止日期:为什么 FIPS 140-2 已经不再足够
如果你一直在 FIPS 140-2 模式下运行 Elasticsearch,你已经了解拥有一个合规 Elastic Stack 的价值。但现在两个压力正在汇聚:
该标准正在退出历史舞台。FIPS 140-2 证书正在逐步淘汰。采购人员、审计人员和授权机构正在将要求转向 140-3。一个只支持旧标准的技术栈,其合规故事也有一个到期日期。
审计人员不接受 “差不多”。仅运行 FIPS 批准的算法是不够的。你的应用层需要明确配置为 FIPS 模式,并禁用未经批准的算法,同时清晰记录加密边界。部分合规就是不合规。
难道我不能只是将 Elasticsearch 放在符合 FIPS 要求的负载均衡器后面,或者运行在经过 FIPS 加固的操作系统上吗?不能,原因如下:FedRAMP 的网络安全要求适用于应用层的加密操作,而不仅仅是网络边界。节点间通信、密钥库加密和凭证哈希都需要在经过验证的模块内部完成。一个围绕不合规应用层构建的合规边界,并不是 FIPS 部署;它只是一个等待发生的审计问题。
Elasticsearch 9.4 中的 FIPS 140-3 模式实现内容
当你开启 FIPS 模式后,Elasticsearch 和 Kibana 会将所有加密操作限制为 FIPS 批准的算法,并将这些操作全部委托给运行环境中的经过验证的模块。以下是该模式覆盖的内容以及实现方式。
高等级安全的传输层安全协议(TLS)全面覆盖,没有例外。节点之间的传输、通过 HTTPS 提供的 REST API、Kibana 与 Elasticsearch 之间的通信:所有这些都只能使用 FIPS 批准的密码套件。不符合要求的套件不会被降低优先级处理,而是直接被拒绝。
PBKDF2 替代 bcrypt 用于密码哈希。bcrypt 未获得 FIPS 批准,因此在 FIPS 模式下,Elasticsearch 会为原生领域、文件领域以及所有存储的凭证切换到 PBKDF2。你的用户和服务账号将通过一种不会被审计人员标记的问题算法得到保护。
密钥库加密保持在边界内部。Elasticsearch 密钥库中的机密、API 密钥、仓库凭证以及 Kibana 保存对象的加密密钥,都会通过 FIPS 批准的密钥派生和加密方式进行封装。不会出现“集群符合要求”与“机密不符合要求”之间的差距。
你提供加密模块。Elasticsearch 中的 FIPS 140-3 支持基于Bouncy Castle FIPS Java API 2.0,这是一个在 Java 虚拟机(JVM)内部运行的、通过 FIPS 140-3 验证的加密模块。Elasticsearch 将所有加密操作委托给 Bouncy Castle;它不会自行实现加密函数。Elasticsearch 使用你自己的 FIPS 140-3 JVM 和 Bouncy Castle FIPS 提供程序,让你能够完全控制加密边界和模块版本管理。
Kibana 采用不同的路径,它运行在配置了符合 FIPS 要求的 OpenSSL 3 提供程序的 Node.js 环境中。两者结合后,两个组件都运行在清晰定义的加密边界内,这些边界足够简洁,可以向审计人员进行说明和展示。
谁需要 Elasticsearch 中的 FIPS 140-3 支持
在联邦授权边界、网络安全成熟度模型认证( CMMC )范围环境或国防信息系统局( DISA )安全技术实施指南( STIG )加固基础设施中运行 Elastic 的联邦和国防团队。现在你可以升级到 9.x,而无需在授权文档中留下缺口。你的运行授权( ATO )文档包引用的是 FIPS 140-3,而不是即将过期的 140-2 证书。
金融服务和医疗保健组织,其中支付卡行业数据安全标准( PCI DSS )、萨班斯-奥克斯利法案( SOX )或健康保险流通与责任法案( HIPAA )审计会询问你的搜索基础设施如何处理加密。FIPS 模式让你的合规团队可以用一个词回答,而不是提供三段解释。
任何需要在采购问卷中回答“你们支持 FIPS 140-3 吗?”的组织。这个问题正在企业请求提案( RFP )、合作伙伴安全评估和保险承保检查清单中越来越常见。有了 9.4,答案是“是”。
从 FIPS 140-2 迁移到 FIPS 140-3
如果你目前在 Elastic 8.x 上运行 FIPS 140-2,你不必第一天就跳转到 9.x。Elastic 8.19 继续支持 FIPS 140-2,并且从 8.19.15 开始提供 FIPS 140-3 支持。这为你提供了两条路径:
继续使用 8.19.15+,并原地升级标准。如果你还没有准备好迁移到 9.x,你可以在当前主版本中从 FIPS 140-2 切换到 140-3。你的集群保持不变,而你的合规安全态势继续向前发展。FIPS 140-2 证书在 2026 年 9 月之前仍然有效,因此你有一个过渡窗口。但越早迁移,你越不依赖退出时间表,同时还可以受益于新功能!
迁移到 9.4,直接采用 140-3。如果你本来就计划进行主要版本升级,9.4 从一开始就提供 FIPS 140-3,同时包含 9.x 系列中的所有内容:Elasticsearch查询语言(ES|QL)最新功能、改进的数据摄取、更新后的安全检测以及性能提升。无需在合规性和功能之间做出取舍。
| 继续使用 8.19.15+ | 升级到 9.4 |
|---|---|
| FIPS 标准 | 140-3(从 8.19.15 开始) |
| 主版本变更 | 否 |
| 新的 9.x 功能 | 否 |
| FIPS 140-2 证书有效期至 | 2026 年 9 月 |
| Kibana 覆盖 | 是 |
无论选择哪种方式,配置模型都会让你感到熟悉。你只需要在 YAML 配置中启用 FIPS 模式,指定一个经过 FIPS 验证的 JVM,然后技术栈会处理剩余工作。同时 Kibana 也会被覆盖在两条路径中:你的可视化和分析层会与 Elasticsearch 在同一个合规边界内运行。
如何在 Elasticsearch 9.4 中启用 FIPS 140-3
FIPS 140-3 支持现已在 Elastic 9.4 中面向自管理部署提供,要求拥有 Platinum 或 Enterprise 订阅,与 FIPS 140-2 所需的许可层级相同。有关设置说明、支持的 JVM 版本、配置详情以及已知限制,请参阅FIPS 合规文档。
下载 Elastic 9.4,给你的合规团队带来一些好消息。
有问题吗?你的 Elastic 账号团队可以帮助规划 FIPS 部署,或者进入Elastic 社区论坛,与其他在受监管环境中运行的运营人员交流经验。
本文中描述的任何功能或特性的发布以及发布时间安排均由 Elastic 自行决定。任何当前不可用的功能或特性可能不会按时交付,或者可能根本不会交付。
常见问题
Elasticsearch 是否支持 FIPS 140-3?
是的。Elasticsearch 和 Kibana 的 FIPS 140-3 支持已在 Elastic 9.4 中面向自管理部署正式提供。所有加密操作都会委托给 Bouncy Castle FIPS Java API 2.0,这是一个经过 FIPS 140-3 验证的模块。需要 Platinum 或 Enterprise 订阅。
FIPS 140-2 什么时候过期?
NIST 已停止接受新的 FIPS 140-2 模块提交。现有的 FIPS 140-2 证书将在 2026 年 9 月之前保持有效。在 FIPS 140-2 模式下运行 Elasticsearch 的组织应该在该截止日期之前规划迁移,以避免合规文档出现缺口。
我可以在不升级到 Elasticsearch 9.x 的情况下,从 FIPS 140-2 迁移到 FIPS 140-3 吗?
可以。FIPS 140-3 支持已在 Elastic 8.19.15 及更高版本中提供。你可以在当前主版本中从 FIPS 140-2 切换到 FIPS 140-3,而无需迁移到 9.x。或者,你也可以直接升级到 Elastic 9.4,从一开始就采用 FIPS 140-3。
FIPS 模式会在 Elasticsearch 中进行哪些加密方面的更改?
启用 FIPS 模式后,Elasticsearch 会将所有操作限制为 FIPS 批准的密码套件,将密码哈希中的 bcrypt 替换为 PBKDF2,并将所有加密功能委托给 Bouncy Castle FIPS 提供程序。未经批准的密码套件会被拒绝,而不仅仅是降低优先级。
Kibana 是否支持 FIPS 140-3?
是的。Kibana 运行在配置了符合 FIPS 要求的 OpenSSL 3 提供程序的 Node.js 环境中。当启用 FIPS 模式时,Elasticsearch 和 Kibana 都运行在清晰定义的加密边界内。
为什么经过 FIPS 加固的操作系统或负载均衡器不足以满足 FedRAMP 合规要求?
FedRAMP 的网络安全要求适用于应用层的加密操作,而不仅仅是网络边界。节点间通信、密钥库加密和凭证哈希都必须在经过验证的加密模块内部完成。一个围绕不合规应用层构建的合规边界是一个审计发现,而不是 FIPS 部署。
Elasticsearch 的 FIPS 140-3 支持是否可用于 Elastic Cloud?
Elastic 9.4 的 FIPS 140-3 支持覆盖自管理部署。云部署可用性不包含在此次公告中。请联系你的 Elastic 账号团队,或查看 Elastic 文档以了解云端 FIPS 路线图详情。
这篇内容对你有多大帮助?
原文:FIPS 140-3 support for Elasticsearch and Kibana - Elasticsearch Labs