0

我需要您在 MQTT 桥接方面的帮助。目前我可以成功地将本地 MQTT 桥接到 Watson IOT 消息传递,但只能在不安全模式下,即。1883端口。所以我通过这个命令获得了服务器证书

openssl s_client -connect myorg.messaging.internetofthings.ibmcloud.com:8883 -showcerts > server.crt

并从顶部删除两行,从底部删除两行。当我尝试以安全模式连接它时,我收到如下套接字错误。有人可以帮我吗?

mosquitto.conf

连接桥到watsoniot
bridge_insecure 假
bridge_certfile /home/pi/server.crt
地址 myorg.messaging.internetofthings.ibmcloud.com:8883
清除会话错误
try_private 假
bridge_attempt_unsubscribe 假
通知真
notification_topic iot-2/type/Raspberry/id/my_mqtt_gateway/evt/status/fmt/raw
远程用户名使用令牌认证
远程密码 ***************
remote_clientid g:myorg:Raspberry:my_mqtt_gateway
iot-2/type/+/id/+/cmd/+/fmt/+中的主题iot-2/type/+/id/+/cmd/+/fmt/+
主题 iot-2/type/+/id/+/evt/+/fmt/+ out iot-2/type/+/id/+/evt/+/fmt/+
connection_messages 真

蚊子日志

1487240737:mosquitto 版本 1.4.10(构建日期,星期四,2016 年 8 月 25 日 10:12:09 +0100)开始
1487240737:从 mosquitto.conf 加载的配置。
1487240737:在端口 1883 上打开 ipv4 侦听套接字。
1487240737:在端口 1883 上打开 ipv6 侦听套接字。
1487240737:将网桥连接到 watsoniot (myorg.messaging.internetofthings.ibmcloud.com:8883)
1487240738:来自 127.0.0.1 端口 1883 的新连接。
1487240738:新客户端从 127.0.0.1 连接为 mqttjs_93a3961c (c1, k10, u'foo')。
1487240738:来自 127.0.0.1 端口 1883 的新连接。
1487240738:新客户端从 127.0.0.1 连接为 mqttjs_618c88ab (c1, k10)。
1487240739:客户端 local.g:myorg:Raspberry:my_mqtt_gateway 上的套接字错误,正在断开连接。
1487240747:来自 192.168.82.130 端口 1883 的新连接。
4

1 回答 1

0

bridge_certfile指令用于本地代理的客户端证书,用于通过远程代理对其自身进行身份验证。您不需要这样做来连接到 Watson IoT。

您应该使用bridge_cafileorbridge_capath指向签署 Watson IoT 证书的 CA 证书,以便本地代理可以验证远程端是他们所说的那个人。

于 2017-02-16T22:41:58.350 回答