我正在尝试建立一个kafka集群,它根据侦听器支持多个ssl密钥库和信任库。
我设置了一个名为“localfwd”的侦听器,并将其配置为指向信任库、密钥库等。
但是,由于某些原因,每次我尝试连接到它时,都会收到无效的握手和通常的“ ERROR [Logging] javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
“例外。请注意,无论是否进行主机名验证,都会发生这种情况。
如果我默认为所有侦听器使用一个ssl配置,那么它可以完美地工作。
我尝试过静态地将这两个配置都放在server.properties文件中,或者使用kafka配置动态地修改它们,但没有一个选项起作用。
不知道我在这里错过了什么?
server.properties中的多个侦听器配置:
listeners=PLAINTEXT://:9092,\
LOCALFWD://:9099,\
advertised.listeners=PLAINTEXT://:9092,\
LOCALFWD://localhost:30090,\
listener.security.protocol.map=PLAINTEXT:PLAINTEXT,\
LOCALFWD:SSL
listener.name.LOCALFWD.ssl.truststore.location=/etc/kafka/tls-local/kafka.truststore
listener.name.LOCALFWD.ssl.keystore.location=/etc/kafka/tls-local/kafka.keystore
listener.name.LOCALFWD.ssl.keystore.password=kafka
listener.name.LOCALFWD.ssl.truststore.password=kafka
listener.name.LOCALFWD.ssl.keystore.type=JKS
listener.name.LOCALFWD.ssl.key.password=kafka
listener.name.LOCALFWD.ssl.truststore.type=JKS
listener.name.LOCALFWD.ssl.client.auth=required
1条答案
按热度按时间kzipqqlq1#
我成功了。
在侦听器属性中使用小写实现了以下目的:
listener.name.localfwd.ssl
而不是listener.name.LOCALFWD.ssl
侦听器、播发侦听器和侦听器安全Map仍保留UPPERCASE://