【问题标题】:Mosquitto OpenSSL handshake failure.Mosquitto OpenSSL 握手失败。
【发布时间】:2015-10-06 06:32:48
【问题描述】:

我有一个托管在 CentOs 6.7 中的 Mosquitto 1.4.4 代理。

通过关注 mosquitto 文档 (http://mosquitto.org/man/mosquitto-tls-7.html) 和 How do you set up encrypted mosquitto broker like a webpage which has https?

我尝试在客户端和 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

我在蚊子经纪人那里得到的是

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.

有什么办法可以解决?我哪里出错了?

【问题讨论】:

  • Stack Overflow 是一个编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参阅帮助中心的What topics can I ask about here。也许Super User 或Server Fault 会是一个更好的提问地方。另见Where do I post questions about Dev Ops?。
  • 我不太确定问题是否出在 libmosquitto openssl 客户端。实际上,我将其发布在这里,因为 serverfault 上没有 mosquitto 或 mqtt 的标签。我的错。我仍然意识到这是错误的论坛。谢谢。

标签: openssl centos mqtt mosquitto


【解决方案1】:

我在这里看到的最常见的失败原因是证书配置错误。我建议使用 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

【讨论】:

  • openssl s_client 应与-tls1 -servername &lt;server name&gt; 一起调用,以确保使用 TLS 和 SNI。缺少 TLS 和 SNI 会导致实践中的问题。例如,请参阅 OpenSSL 用户邮件列表中的 Monitoring software depending on openssl not working on cloudflare ssl websites。此外,您不应将时间浪费在 OP 隐瞒重要信息(例如服务器名称)的问题上。我们无法检查配置或验证建议的修复。
  • @ralight openssl 客户端工作正常。问题应该出在 libmosquitto 客户端上。打算试试其他客户端。
  • @jww 我同意这不是一个编程问题(我只是自动回答,没有考虑问题在哪里),但在这种情况下,您的其余评论是不必要的 - 有问题的服务器有仅支持 TLS,不支持 SSL,并且不支持 SNI。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-11
  • 1970-01-01
  • 2020-08-23
  • 2018-07-28
相关资源
最近更新 更多