【发布时间】:2016-03-17 13:17:45
【问题描述】:
我正在开发一个使用 Mqtt 协议与节点通信的应用程序。我在 Windows 上使用 Mosquitto 作为代理。我想使用 Mosquitto 的 SSL/TLS 功能来提供安全的身份验证和消息传递机制。我创建相关证书并在 mosquitto.conf 文件上进行配置。但是,当我尝试从命令提示符加载 mosquitto.conf 并重新启动 mosquitto 服务时,该服务无法启动并出现错误。我会解释我做了什么;
1) 我使用 OpenSSL 创建了证书。我按照“https://eclipse.org/mosquitto/man/mosquitto-tls-7.php”的说明进行操作。 首先,我创建了 ca.crt(根 CA 证书);
相关证书信息如上所示。我还输入了“trialca”作为 ca.crt 的 PEM 密码。然后,我创建了 server.key(我使用“trialsrv”作为密码)、server.csr 和 server.crt; ;
2)我在mosquitto.conf上做了一些配置;
cafile /demo/ca.crt
certfile /demo/server.crt
keyfile /server.key
require_certificate true
use_identity_as_username true
注意:我在端口 1883 上使用默认侦听器。
3) 我从 PC 上运行的 Mosquitto 服务器上的命令提示符加载 mosquitto.conf。
c:\Program Files (x86)\mosquitto> mosquitto -c mosquitto.conf
然后,我从 Windows 上的服务重新启动了 Mosquitto 服务。但是,它无法启动并出现错误。
我做错了什么吗?我需要你的建议来解决这个问题。
【问题讨论】: