我尝试在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
如何正确配置?
答案 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文件名的配置参数行包含一个'空格'每个文件名后面的字符,以及行尾字符之前的字符。
- 删除行尾字符之前的空格导致错误不再出现。
- 然后蚊子经纪人开始没有错误。