一个基本的融合-卡夫卡生产者和消费者已经创建,以发送明文信息。
在成功地将消息从生产者发送到使用者之后,添加了额外的信任以使用SSL而不是明文。
下面的Con图已经实现,这将导致以下错误。
“讯息超时”
制片人Con图:
bootstrap.servers: localhost9093
security.protocol: SSL
ssl.keystore.location: ../keystore.p12
ssl.keystore.password: [password]
ssl.ca.location: ../CARoot.pem
ssl.key.location: ../key.pem
ssl.certificate.location: ../cert.pem
ssl.key.password: [password]服务器Con图:
ssl.keystore.type= PKCS12
ssl.keystore.location= ../keystore.p12
ssl.keystore.password= [password]
ssl.ca.location= ..\\CARoot.pem
ssl.certificate.location= ..\\cert.pem
ssl.key.password= [password]
ssl.key.location= ../key.pem
security.inter.broker.protocol= SSL
listeners = PLAINTEXT://localhost:9092,SSL://localhost:9093
advertised.listeners = PLAINTEXT://localhost:9092,SSL://localhost:9093是否需要额外的信任来实现SSL?
另外,有人能总结一下CARoot吗?据我所读,这是一连串的证书。因此,如果只有一个证书,那么CARoot.pem和cert.pem应该是相同的吗?这个文件可能是问题所在。证书和私钥是在PyOpenSSL中创建的。keystore.p12是使用密钥工具从.jks密钥存储库转换而来的。
有办法使用这个库创建CARoot.pem文件吗?
谢谢。
发布于 2019-12-10 04:37:58
由于CA证书文件的格式设置,生产者正在超时。
以下问题的解决方案用于解决超时错误,该错误使用OpenSSL而不是PyOpenSSL。
注: OpenSSL可在Git中使用。
How to export CA certificate chain from PFX in PEM format without bag attributes
此外,还对服务器和生产者的配置进行了一些更改。
生产者配置:
bootstrap.servers: localhost9093
security.protocol: SSL
ssl.ca.location: ../CARoot.pem
ssl.key.location: ../key.pem
ssl.certificate.location: ../cert.pem服务器配置:
ssl.protocol= SSL
ssl.keystore.type= JKS
ssl.keystore.location= ../keystore.jks
ssl.keystore.password= [password]
ssl.client.auth= required
security.inter.broker.protocol= SSL
listeners = PLAINTEXT://localhost:9092,SSL://localhost:9093
advertised.listeners = PLAINTEXT://localhost:9092,SSL://localhost:9093https://stackoverflow.com/questions/59232102
复制相似问题