添加SSL配置后,Mosquitto MQTT服务重启失败。

问题描述 投票:0回答:1

我试图在Amazon EC2,Ubuntu 18服务器上配置SSL访问我的mosquitto bridrge。我按照以下步骤进行了配置 蚊子毒素文档 并最终得到以下文件。

  1. ca. crt
  2. ca.key
  3. ca.srl
  4. 客户端.crt
  5. 客户端.csr
  6. 客户端.钥匙
  7. server.crt
  8. 服务器.csr
  9. 服务器.钥匙

在一个临时目录下。

然后我复制了三个文件。

sudo cp ca.crt /etc/mosquitto/ca_certificates/
sudo cp server.key /etc/mosquitto/certs/
sudo cp server.crt /etc/mosquitto/certs/

然后我在配置文件中添加了以下部分:

listener 8883
cafile /etc/mosquitto/ca_certificates/ca.crt
keyfile /etc/mosquitto/certs/server.key
certfile /etc/mosquitto/certs/server.crt

然后我想重新启动mosquitto:

sudo service mosquitto restart

这不行,我的回答是

> Job for mosquitto.service failed because the control process exited with error code.
> See "systemctl status mosquitto.service" and "journalctl -xe" for details.

我尝试了这两个,但只有信息,配置是错误的。

我试着注释了不同的行,下面的结构让服务重新启动。

listener 8883
cafile /etc/mosquitto/ca_certificates/ca.crt
keyfile /etc/mosquitto/certs/server.key
#certfile /etc/mosquitto/certs/server.crt

不幸的是,为了让配置工作,certfile是必须的 我检查了配置示例和文档,certfile是一个合法且必需的参数。

我怎样才能解决这个问题?

ssl amazon-ec2 mqtt mosquitto
1个回答
0
投票

经过进一步调查,我发现在示例配置文件中,行的顺序是不同的。

listener 8883
cafile /etc/mosquitto/ca_certificates/ca.crt
keyfile /etc/mosquitto/certs/server.key
certfile /etc/mosquitto/certs/server.crt

listener 8883
cafile /etc/mosquitto/ca_certificates/ca.crt
certfile /etc/mosquitto/certs/server.crt
keyfile /etc/mosquitto/certs/server.key

解决了这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.