Mosquitto OpenSSL 握手失败。
Mosquitto OpenSSL handshake failure.
我在 CentOs 6.7 中托管了一个 Mosquitto 1.4.4 代理。
通过关注 mosquitto 文档
(http://mosquitto.org/man/mosquitto-tls-7.html) 和
我尝试启用客户端和 mosquitto 代理之间的加密连接,启动代理并启用 运行 TLS。
mosquitto version 1.4.4 (build date 2015-09-24 08:08:55+0000) starting
Config loaded from mosquitto.conf.
Opening ipv4 listen socket on port 8883.
Opening ipv6 listen socket on port 8883
分发证书颁发机构证书 (ca.crt
) 后,我尝试 运行 在 lib_mosquitto 中使用 mosquitto_pub
进行测试,使用命令
mosquitto_pub -h x.x.x.x -p 8883 -t topic -m message --cafile ca.crt
我在 mosquitto 经纪人那里得到的是
New connection from y.y.y.y on port 8883.
OpenSSL Error: error:140780E5:SSL routines:SSL23_READ:ssl handshake failure
Socket error on client <unknown>, disconnecting.
有什么解决办法?我哪里出错了?
我在这里看到的最常见的失败原因是证书配置不当。我建议使用 openssl 客户端进行调试。这应该可以让您更好地了解问题出在哪里。
openssl s_client -connect x.x.x.x:8883 -CAfile ca.crt
您也可以尝试检查不同的服务器以确保客户端工作正常。
wget http://test.mosquitto.org/ssl/mosquitto.org.crt
mosquitto_pub -h test.mosquitto.org -p 8883 -t topic -m message --cafile mosquitto.org.crt
我在 CentOs 6.7 中托管了一个 Mosquitto 1.4.4 代理。
通过关注 mosquitto 文档 (http://mosquitto.org/man/mosquitto-tls-7.html) 和
我尝试启用客户端和 mosquitto 代理之间的加密连接,启动代理并启用 运行 TLS。
mosquitto version 1.4.4 (build date 2015-09-24 08:08:55+0000) starting
Config loaded from mosquitto.conf.
Opening ipv4 listen socket on port 8883.
Opening ipv6 listen socket on port 8883
分发证书颁发机构证书 (ca.crt
) 后,我尝试 运行 在 lib_mosquitto 中使用 mosquitto_pub
进行测试,使用命令
mosquitto_pub -h x.x.x.x -p 8883 -t topic -m message --cafile ca.crt
我在 mosquitto 经纪人那里得到的是
New connection from y.y.y.y on port 8883.
OpenSSL Error: error:140780E5:SSL routines:SSL23_READ:ssl handshake failure
Socket error on client <unknown>, disconnecting.
有什么解决办法?我哪里出错了?
我在这里看到的最常见的失败原因是证书配置不当。我建议使用 openssl 客户端进行调试。这应该可以让您更好地了解问题出在哪里。
openssl s_client -connect x.x.x.x:8883 -CAfile ca.crt
您也可以尝试检查不同的服务器以确保客户端工作正常。
wget http://test.mosquitto.org/ssl/mosquitto.org.crt
mosquitto_pub -h test.mosquitto.org -p 8883 -t topic -m message --cafile mosquitto.org.crt