配置SSL mosquitto错误

时间:2015-06-24 04:39:59

标签: ssl mqtt mosquitto

我尝试在these steps之后为mostquitto配置SSL。

当我重启mosquitto时,出现错误:

1435120150: mosquitto version 1.4.2 (build date Mon, 18 May 2015 15:25:19 +0100) starting

1435120150: Config loaded from /etc/mosquitto/mosquitto.conf.

1435120150: Opening ipv4 listen socket on port 8883.

1435120150: Error: Unable to create TLS context.

这是我的mosquitto配置:

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

bind_address Dell
port 8883
cafile /etc/mosquitto/ca_certificates/ca.crt
certfile /etc/mosquitto/certs/Dell.crt
keyfile /etc/mosquitto/certs/Dell.key
tls_version tlsv1

如何正确配置?

3 个答案:

答案 0 :(得分:1)

Unable to create TLS context表示对SSL_CTX_new()的调用失败。这是在为侦听套接字设置SSL选项的开始,这是非常意外的。

您可以做的唯一事情就是检查您的openssl版本,以及更改/删除tls_version选项。删除它是最好的选择,除非您有特殊原因禁止TLSv1.1或TLSv1.2(或将来的TLSv1.3)。

答案 1 :(得分:0)

请检查客户端系统时间和ssl证书结束日期,客户端系统时间必须介于ssl证书开始时间和结束时间之间

检查客户端系统日期:

  

日期

检查openssl证书结束日期:

  

openssl x509 -enddate -noout -in cacert.pem

答案 2 :(得分:0)

另一种解决方案......针对[不同]具体原因。

对于错误"错误:问题设置TLS选项",一个具体原因修复如下:

- 在mosquitto配置文件中,带有cert,key和CA文件名的配置参数行包含一个'空格'每个文件名后面的字符,以及行尾字符之前的字符。

- 删除行尾字符之前的空格导致错误不再出现。

- 然后蚊子经纪人开始没有错误。