Сервер MQTT с ошибкой SSL/TLS: невозможно загрузить файл ключа сервера

Я пытаюсь настроить брокера MQTT с SSL. Когда я запускаю брокера, я получаю эту ошибку:

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

Я также выполнил шаг, упомянутый в https">ЭТО вопрос. Но все равно не решил проблему.


person Ankur Bhatia    schedule 09.01.2016    source источник
comment
Есть ли у ключа пароль?   -  person hardillb    schedule 09.01.2016
comment
@hardillb Да, у него есть пароль.   -  person Ankur Bhatia    schedule 10.01.2016


Ответы (3)


Как подразумевает @hardillb, попробуйте удалить пароль или запустить брокер вручную.

В качестве альтернативы, если вы используете Ubuntu, apparmor может ограничивать доступ к этим файлам. Попробуйте поместить их в /etc/mosquitto/certs вместо этого.

person ralight    schedule 11.01.2016

Я была такая же проблема. Я исправил это, предоставив в конфигурации fullchain.pem вместо chain.pem.

person Lu.Wi    schedule 30.03.2018
comment
как ты создал фуллпэм? у меня есть cafile /etc/mosquitto/certs/mqtt_ca.crt certfile /etc/mosquitto/certs/mqtt_srv.crt keyfile /etc/mosquitto/certs/mqtt_srv.pem files - person Isaiyavan Babu Karan; 27.05.2019
comment
не могли бы вы привести пример конфигурации fullchai в mosquitto? спасибо - person Fabio; 05.08.2019

Вы даже можете попробовать изменить имя server.crt на cert.pem и server .key на key.pem в пути mqtt/certs/. Также не забудьте изменить путь и имя файла в своем коде.

person Sumit Pugalia    schedule 29.06.2017