【发布时间】:2018-03-21 10:16:46
【问题描述】:
正如标题所述,我在将 Mosquitto MQTT 客户端(用 C 编写)连接到我的 Azure IoT 集线器时遇到了困难。我之前已经设法连接到许多不同的平台(例如 Amazon EC2、ThingsBoard、TheThings.io、SierraWireless 等),所以我知道我的客户端非常可靠。
这里的困难在于我需要某种证书才能被允许连接,但我不确定我需要做什么。
我添加了以下配置以使其正常工作:
mosquitto_opts_set(client, MOSQ_OPT_PROTOCOL_VERSION, "MQTT_PROTOCOL_V311");
mosquitto_tls_set(client, "/home/ca-certificates.crt", NULL, NULL, NULL, NULL);
mosquitto_tls_insecure_set(client, 1);
mosquitto_tls_opts_set(client, 0, "tlsv1", NULL);
mosquitto_username_pw_set(client, "hubname.azure-devices.net/deviceName", "SharedAccessSignature=SharedAccessSignature sr=hubname.azure-devices.net%2Fdevices%2FdeviceName&sig=sigValue&se=1553087157");
在上面的代码中,“hubname”、“deviceName”和“sigValue”当然在我的代码中被替换为实际值。
谁能指出我做错了什么,或者我需要采取哪些其他配置步骤?
【问题讨论】:
标签: ssl mqtt tls1.2 mosquitto azure-iot-hub