具有SSL / TLS的MQTT服务器错误:无法加载服务器密钥文件

时间:2016-01-09 12:35:05

标签: ssl mqtt tls1.2

我正在尝试使用SSL设置MQTT代理。当我启动代理时,我收到此错误:

1452342536: Error: Unable to load server key file "/home/ilab/mqtt/server/server.key". Check keyfile.

以下是我的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
cafile /home/ilab/mqtt/CA/ca.crt
certfile /home/ilab/mqtt/server/server.crt
keyfile /home/ilab/mqtt/server/server.key
port 8883
tls_version tlsv1

我也按照THIS问题中提到的步骤进行了操作。但仍然没有解决问题。

3 个答案:

答案 0 :(得分:2)

正如@hardillb所暗示的那样,尝试删除密码或手动启动代理。

或者,如果您使用的是Ubuntu,那么apparmor可能会限制对这些文件的访问。请尝试将它们放在/etc/mosquitto/certs中。

答案 1 :(得分:0)

您甚至可以尝试将server.crt的名称更改为cert.pem,将server .key更改为路径mqtt / certs /中的key.pem 另外,请不要忘记更改代码中的路径和文件名。

答案 2 :(得分:0)

我有同样的问题。我通过在配置中提供fullchain.pem而不是chain.pem来修复它。