Рейтинг:0

Ошибка протокола Mosquitto SSL после обновления до версии 2.0

флаг au

имел mosquitto 1.x, отлично работающий на Debian 10 (с SSL). Вместе с обновлением до Debian 11 вышел mosquitto 2.0.11-1.

Мне пришлось внести пару изменений в файл конфигурации, чтобы он вообще запустился. Уже прочитано https://mosquitto.org/documentation/migrating-to-2-0/ Для тестирования я в настоящее время запускаю демон с помощью этой команды в интерактивном режиме:

/usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf -v

Но теперь клиенты не могут больше подключаться, независимо от их типа клиента (у меня их великое множество). Для каждой попытки подключения клиента я получаю запись в журнале, подобную этой:

1629544574: новое подключение от x.x.x.x:54278 через порт 8883.
1629544574: клиент <неизвестно> отключен из-за ошибки протокола.

Это основной файл конфигурации:

# Поместите вашу локальную конфигурацию в /etc/mosquitto/conf.d/
#
# Полное описание конфигурационного файла находится по адресу
# /usr/share/doc/mosquitto/examples/mosquitto.conf.example

pid_file /var/run/mosquitto/mosquitto.pid

постоянство верно
расположение_постоянства /var/lib/mosquitto/

#Простой
#слушатель 1883

#SSL
слушатель 8883

#keepalive_interval 600

# Не требовать аутентификации
allow_anonymous правда

log_type все

файл log_dest /var/log/mosquitto/mosquitto.log

include_dir /etc/mosquitto/conf.d

А это SSL (единственный файл в conf.d):

кафе-файл /etc/mosquitto/certs/ca.cer
файл сертификата /etc/mosquitto/certs/mqtt.cer
ключевой файл /etc/mosquitto/certs/mqtt.key
dhparamfile /etc/mosquitto/certs/dhparam.pem

#tls_версия tlsv1.2

Все файлы, связанные с сертификатом, существуют:

root@linux06:/etc/mosquitto# ls -l сертификаты/
всего 28
-rw-r--r-- 1 mosquitto mosquitto 3915 28 апр 02:36 ca.cer
-rw-r----- 1 mosquitto mosquitto 424 авг 21 12:45 dhparam.pem
-rwxr-xr-- 1 mosquitto mosquitto 3546 28 апреля 02:36 mqtt.cer
-rwxr-x--- 1 mosquitto mosquitto 3243 28 апреля 02:36 mqtt.key
-rwxr-x--- 1 mosquitto mosquitto 7528 28 апреля 02:36 mqtt.p7b
-rw-r--r-- 1 mosquitto mosquitto 130 28 апр 02:36 README

Принятие всех сертификатов в клиентах, к сожалению, не помогает. Таким образом, у меня хотя бы было с чего начать. Когда я удаляю файл конфигурации ssl, следовательно, отключаю SSL, клиент может нормально подключаться при попытке простого подключения.

Вот что я нахожу немного странным. Этого не должно быть, не так ли?

root@linux06:~# openssl s_client -connect 127.0.0.1:8883 -showcerts
ПОДКЛЮЧЕН(00000003)
написать: errno=104
---
нет доступного однорангового сертификата
---
Имена ЦС сертификата клиента не отправлены
---
Рукопожатие SSL прочитало 0 байт и записало 283 байта
Проверка: ОК
---
Новый, (НЕТ), Шифр ​​(НЕТ)
Безопасное повторное согласование НЕ поддерживается
Сжатие: НЕТ
Расширение: НЕТ
ALPN не согласован
Предварительные данные не были отправлены
Подтвердите код возврата: 0 (хорошо)
---
root@linux06:~#

С сертификатом все еще все в порядке (хотя срок его действия скоро истечет; замаскировано небольшое количество содержимого):

root@linux06:~# openssl x509 -text -in /etc/mosquitto/certs/mqtt.cer
Сертификат:
    Данные:
        Версия: 3 (0x2)
        Серийный номер:
            18:00:00:02:07:9а:37:38:09:44:97:а3:6в:00:01:00:00:02:07
        Алгоритм подписи: sha512WithRSAEncryption
        Эмитент: DC = org, DC = замаскированный, DC = замаскированный, CN = замаскированный
        Срок действия
            Не раньше: 26 августа 13:20:32 2019 GMT
            Не после: 25 августа 13:20:32 2021 GMT
        Субъект: C = DE, ST = NA, L = нигде, OU = замаскирован
        Информация об открытом ключе субъекта:
            Алгоритм открытого ключа: rsaEncryption
                Открытый ключ RSA: (4096 бит)
                Модуль:
                    00:c3:55:4a:ec:47:ba:65:ee:1c:b4:ac:72:73:0d:
                    4b:c3:ae:94:8c:35:d8:1c:99:7e:0e:d9:12:3b:cf:
                    c9:6f:2a:f1:c0:e6:10:3e:52:df:a7:5a:36:73:6a:

Я в своем уме. Кто-нибудь знает, почему это не удается? Я просмотрел пример конфигурации, разрешения файловой системы и веб-страницы. Но я не могу найти причину этой неудачи.

Рейтинг:0
флаг au

Директива

слушатель 8883

нужно перейти к файлу ssl.conf. Это решило это немедленно.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.