You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于keytool导入PEM证书的Confluent Kafka SSL配置咨询

Confluent Kafka SSL 配置说明

你的脚本已将根CA及各区域中间CA导入Java默认信任库${JAVA_HOME}/lib/security/cacerts,以下是对应的Confluent Kafka SSL配置(分客户端与Broker场景):

一、Kafka 生产者/消费者客户端配置

适用于Java客户端(如Confluent Kafka Clients),配置可写入producer.properties或consumer.properties文件:

# 启用SSL协议
security.protocol=SSL
# 指定TLS版本为1.2,匹配你提到的证书要求
ssl.protocol=TLSv1.2
# 强制使用TLS 1.2,避免降级到不安全协议
ssl.enabled.protocols=TLSv1.2
# 指定信任库路径(脚本已更新该路径下的信任库)
ssl.truststore.location=${JAVA_HOME}/lib/security/cacerts
# 信任库密码,对应脚本中的<pass>,默认cacerts密码为changeit
ssl.truststore.password=<你的密码>
# 信任库类型,默认是JKS
ssl.truststore.type=JKS

若使用非Java客户端(如Python、Go),需将根CA与所有中间CA合并为单个PEM文件,再配置对应语言的SSL参数,但你的脚本针对Java信任库,故重点说明Java客户端配置。

二、Kafka Broker 端配置(启用SSL监听时)

若Broker需通过SSL提供服务,且需用这些CA验证客户端证书(双向认证),除信任库配置外,还需在server.properties中添加以下内容:

# 启用SSL监听端口
listeners=SSL://0.0.0.0:9093
# 跨Broker通信使用SSL
security.inter.broker.protocol=SSL
# TLS版本配置
ssl.protocol=TLSv1.2
ssl.enabled.protocols=TLSv1.2
# 信任库配置(Broker需用此验证客户端证书)
ssl.truststore.location=${JAVA_HOME}/lib/security/cacerts
ssl.truststore.password=<你的密码>
ssl.truststore.type=JKS
# 开启客户端认证(双向认证场景)
ssl.client.auth=required
# Broker自身密钥库配置(需额外准备Broker证书与私钥,脚本未涉及)
ssl.keystore.location=/path/to/broker.keystore.jks
ssl.keystore.password=<密钥库密码>
ssl.key.password=<私钥密码>

补充说明

  1. TLS 1.2适配:通过ssl.protocol=TLSv1.2与ssl.enabled.protocols=TLSv1.2可强制Kafka使用该版本,确保与证书兼容并规避不安全协议。
  2. 信任链验证:脚本已将所有必要CA导入默认信任库,Kafka组件建立SSL连接时会自动信任这些CA签发的证书,无需单独指定单证书文件。
  3. 密码安全:生产环境请勿硬编码密码,建议用环境变量或Confluent Secrets传递敏感信息,例如:
    export KAFKA_SSL_TRUSTSTORE_PASSWORD=<你的密码>
    
    配置文件中引用:
    ssl.truststore.password=${KAFKA_SSL_TRUSTSTORE_PASSWORD}
    

内容的提问来源于stack exchange,提问作者Ema Il

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 17:22:42