【问题标题】:Facing Error while running mosquitto broker using TLS with mosquitto使用 TLS 和 mosquitto 运行 mosquitto 代理时遇到错误
【发布时间】:2019-02-27 06:18:51
【问题描述】:

我正在尝试使用 TLS 通过 mqtt 进行通信。我的系统中安装了 ubuntu。对于使用 TLS,我使用以下链接创建了证书:

http://www.embedded101.com/Blogs/PaoloPatierno/entryid/366/mqtt-over-ssl-tls-with-the-m2mqtt-library-and-the-mosquitto-broker

我能够创建证书。我已经从配置文件中删除了bind_address。我正在使用带有mosquitto -c mosquitto_m2mqtt.conf -v 的新配置文件开始mosquitto。 Mosquitto 启动,但是当我运行 mosquitto_sub 命令时,出现如下错误:

mosquitto -c mosquitto_m2mqtt.conf -v
1551172930: mosquitto version 1.4.8 (build date 2016-09-21 11:21:45+0530) starting
1551172930: Config loaded from mosquitto_m2mqtt.conf.
1551172930: Opening ipv4 listen socket on port 8883.
1551172930: Opening ipv6 listen socket on port 8883.
Enter PEM pass phrase:
1551172960: New connection from 127.0.0.1 on port 8883.
1551172960: OpenSSL Error: error:14094416:SSL routines:ssl3_read_bytes:sslv3 alert certificate unknown
1551172960: OpenSSL Error: error:140940E5:SSL routines:ssl3_read_bytes:ssl handshake failure
1551172960: Socket error on client <unknown>, disconnecting.

在我订阅的窗口中,出现如下错误:

mosquitto_sub -p 8883 -q 1 -t sensor/temp --cafile /etc/mosquitto/m2mqtt_srv.crt --tls-version tlsv1 -d
Unable to connect (A TLS error occurred.).

以下是配置文件中添加的参数。

port 8883
cafile /etc/mosquitto/m2mqtt_ca.crt
certfile /etc/mosquitto/m2mqtt_srv.crt
keyfile /etc/mosquitto/m2mqtt_srv.key
tls_version tlsv1

【问题讨论】:

  • 您输入了要求的密码吗?
  • 我输入了密码,然后尝试运行 mosquitto_sub 命令。
  • 为什么你在客户端使用m2mqtt_srv.crt而不是m2mqtt_ca.crt文件?
  • 订阅者将在服务器中运行,而发布者将在树莓派等设备上运行。当我在服务器本身订阅时,我正在使用 m2mqtt_srv.crt。
  • 是的,但mosquitto_sub 命令明确要求将 CA 证书传递给 --cafile 参数。这也是您指向的教程中的内容。

标签: ssl mqtt tls1.2 mosquitto


【解决方案1】:

mosquitto_sub 和 pub 需要一个主机地址或 IP。例如,我在本地使用 test.mosquitto.org,从该站点下载 pem 格式的证书文件,并将此证书作为“cafile”添加到 conf 文件中。这是我的命令:

mosquitto_sub -h test.mosquitto.org -t "test" -p 8883 --cafile "<pem formatted crt file path (downloaded from test.mosquitto.org)>"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-12
    • 1970-01-01
    • 2021-09-22
    • 2016-06-12
    • 2017-10-02
    • 1970-01-01
    • 2013-09-24
    • 1970-01-01
    相关资源
    最近更新 更多