我能够在我的kafka经纪人和客户端中设置SSL,我也能够看到当我们使用9093端口生成消息时,消息是消费者消费的SSL端口.
我尝试的是通过9093端口发送消息,并将消息发送给生产者的消费者.
我想是有办法真理,如果这是实际工作,我是说我怎么能证明9092是不是SSL和9093是SSL和安全吗?
先谢谢,Vishesh.
以下两种方法可以验证SSL的设置.
-Djavax.net.debug=all
bin/kafka-run-class.sh
在以下位置 添加此属性
:
if [ -z "$KAFKA_JMX_OPTS" ]; then KAFKA_JMX_OPTS=" <**add here**> -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false " fi
然后尾随kafka代理日志文件,您应该看到一些编码消息.
要验证服务器的密钥库和信任库是否已正确设置,您可以运行以下命令:
openssl s_client -debug -connect localhost:9093 -tls1
注意:TLSv1应列在ssl.enabled.protocols下.
在此命令的输出中,您应该看到服务器的证书:
-----BEGIN CERTIFICATE----- {variable sized random bytes} -----END CERTIFICATE----- subject=/C=US/ST=CA/L=Santa Clara/O=org/OU=org/CN=Joe Smith issuer=/C=US/ST=CA/L=Santa Clara/O=org/OU=org/CN=kafka/emailAddress=test@test.com
如果证书未显示或者是否存在任何其他错误消息,则表示您的密钥库未正确设置.
参考:
http://docs.confluent.io/2.0.0/kafka/ssl.html
https://github.com/Symantec/kafka-security-0.9