【发布时间】:2017-08-12 22:55:52
【问题描述】:
我正在尝试运行支持 TLS 的 MQTT 代理 (Mosquitto),我按照 http://rockingdlabs.dunmire.org/exercises-experiments/ssl-client-certs-to-secure-mqtt 生成证书和配置。如果我运行
sudo /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf -d -v
它在 /var/log/mosquitto/mosquitto.log 中抛出错误
mosquitto version 1.4.8 (build date Fri, 19 Feb 2016 12:03:16 +0100) starting
Config loaded from /etc/mosquitto/mosquitto.conf.
Opening ipv4 listen socket on port 8883.
Opening ipv6 listen socket on port 8883.
Error: Unable to load server key file "/etc/mosquitto/certs/mqtt_server.key". Check keyfile.
这是我在 conf.d/mymqtt.conf
中的配置# MQTT over TLS/SSL
listener 8883
cafile /etc/mosquitto/ca_certificates/mqtt_ca.crt
certfile /etc/mosquitto/certs/mqtt_server.crt
keyfile /etc/mosquitto/certs/mqtt_server.key
require_certificate true
tls_version tlsv1.2
user mosquitto
并且这些证书和密钥文件存在于适当的位置
这是默认mosquitto.conf
的内容pid_file /var/run/mosquitto.pid
persistence true
persistence_location /var/lib/mosquitto/
log_dest file /var/log/mosquitto/mosquitto.log
include_dir /etc/mosquitto/conf.d
【问题讨论】:
-
密钥和证书文件是什么格式的?密钥文件也有密码吗?
标签: https mqtt tls1.2 mosquitto