Mosquitto TLS / SSL SSL3_READ_BYTES:ssl握手失败,错误:成功和sslv3警报

时间:2016-10-30 20:48:48

标签: ssl mqtt mosquitto

我尝试按照mosquitto所示的指南,但是一旦我启动了蚊子

mosquitto -c mosquitto.conf

定义了端口,ca.crt的位置,server.crt,server.key

然后我使用相同的CA文件执行类似步骤,以签署客户端密钥和证书。

然后启动了客户端

mosquitto_pub -p [port] -h localhost --cafile [ca.crt filepath] -t "hello" -m "hello world"

当我这样做时没有钥匙和证书我得到了

Error: Success

但是当我使用密钥和证书

mosquitto_pub -p [port] -h localhost --cafile [ca.crt filepath] --cert [client.crt path] --key [client1.key path] t "hello" -m "hello world"

我得到了

Error:Success

在服务器端,我看到以下错误

... routines:SSL3_READ_BYTES: sslv3 alert certificate unknown
... routines:SSL3_READ_BYTES: ssl handshake failure

2 个答案:

答案 0 :(得分:0)

我运行openssl命令来验证CA批准了两个生成的证书,并且确实如此。

事实证明,在输入证书的详细信息时,我误解了公共名称部分的用途。在我将其设置为服务器的IP地址后,一切运行良好

答案 1 :(得分:0)

我得到了同样的错误。我试着这样订阅:

mosquitto_sub -h ip_address -p 8883 -t topic --cafile /etc/mosquitto/ca_certificates/ca.crt -d.

将ip_addres替换为您在创建证书时编写的IP地址。在你的问题中,你写了localhost。如果你用ip地址替换它就可以了。