第 9 章 管理 TLS 证书


AMQ Streams 支持 TLS 用于 Kafka 和 AMQ Streams 组件间的加密通信。

在以下组件之间始终加密通信:

  • Kafka 和 ZooKeeper 之间的通信
  • Kafka 代理间的 Interbroker 通信
  • ZooKeeper 节点间的交互通信
  • AMQ Streams Operator 与 Kafka 代理和 ZooKeeper 节点通信

Kafka 客户端和 Kafka 代理之间的通信会根据如何配置集群的加密。对于 Kafka 和 AMQ Streams 组件,TLS 证书也用于身份验证。

Cluster Operator 会自动设置和更新 TLS 证书,以便在集群中启用加密和验证。如果要在 Kafka 代理和客户端之间启用加密或 mTLS 身份验证,它还设置其他 TLS 证书。

CA (证书颁发机构)证书由 Cluster Operator 生成,以验证组件和客户端的身份。如果您不想使用 Cluster Operator 生成的 CA,您可以安装自己的集群和客户端 CA 证书

您还可以为启用了 TLS 加密的 TLS 侦听器或外部监听程序 提供 Kafka 侦听器证书。使用 Kafka 侦听器证书合并您已就位的安全基础架构。

注意

您提供的任何证书都不会由 Cluster Operator 更新。

图 9.1. TLS 保护的通信架构示例

9.1. 内部集群 CA 和客户端 CA

要支持加密,每个 AMQ Streams 组件需要自己的私钥和公钥证书。所有组件证书都由名为 集群 CA 的内部 CA (证书颁发机构)签名。

同样,使用 mTLS 连接到 AMQ Streams 的每个 Kafka 客户端应用程序都需要使用私钥和证书。第二个内部 CA (名为 客户端 CA )用于为 Kafka 客户端签名证书。

集群 CA 和客户端 CA 均有自签名公钥证书。

Kafka 代理配置为信任由集群 CA 或客户端 CA 签名的证书。客户端不需要连接到的组件,如 ZooKeeper,只信任由集群 CA 签名的证书。除非禁用外部监听程序的 TLS 加密,否则客户端应用程序必须信任由集群 CA 签名的证书。对于执行 mTLS 身份验证的客户端应用程序也是如此。

默认情况下,AMQ Streams 会自动生成和更新集群 CA 或客户端 CA 发布的 CA 证书。您可以在 Kafka.spec.clusterCaKafka.spec.clientsCa 对象中配置这些 CA 证书的管理。

您可以将集群 CA 或客户端 CA 的 CA 证书替换为您自己的 CA。更多信息请参阅 第 9.7.1 节 “安装您自己的 CA 证书和私钥”。如果您提供自己的 CA 证书,则必须在它们过期前更新它们。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat