使用 ca cert(.crt 或 .pem)配置 Kafka 客户端
Posted
技术标签:
【中文标题】使用 ca cert(.crt 或 .pem)配置 Kafka 客户端【英文标题】:Configure Kafka client with ca cert (.crt or .pem) 【发布时间】:2021-11-30 00:10:40 【问题描述】:我正在使用 debezium 配置使用 SASL_SSL 的 kafka 连接。虽然 SASL 身份验证配置我可以做如下:
security.protocol=SASL_SSL
sasl.mechanism=SCRAM-SHA-256
sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username=$KAFKA_USERNAME password=$KAFKA_PASSWORD;"
我找不到任何有关使用 .crt 或 pem 文件配置 CA 位置的文档。在基于 librdkafka 的 C# 或 Python 客户端中,我可以设置以下属性:
ssl.ca.location = 'path/to/ca/file/ca-bundle.crt (pem also works)
但是对于 Java 客户端(基于 Java 的 debezium),我只看到 jks 格式的信任库。 如何配置它以使用类似于上面提到的客户端? 下面的内容对 java 客户端有效吗?
ssl.truststore.type = PEM
ssl.truststore.location='path/to/ca/file/ca-bundle.crt'
【问题讨论】:
【参考方案1】:Java 信任库和密钥库只能是 JKS 文件。如果你只有 PEM/CRT 文件,你需要convert them
【讨论】:
以上是关于使用 ca cert(.crt 或 .pem)配置 Kafka 客户端的主要内容,如果未能解决你的问题,请参考以下文章
ssl证书 只有crt文件 但是使用时需要key或pem文件 请问如何转换
mitmproxy-ca-cert.pem手机证书文件安装(一直安装不上,折磨我了两天!)
SSL:无法加载 CA 证书文件 /etc/pki/tls/certs/ca-bundle.crt
如何配置 Spring Boot 应用程序以在 MySQL 上使用 SSL/TLS?
CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none 解决方法