MQTT ошибка подключения

Добрый вечер! Проблема следующая:
Сначала установил пароль на Web интерфейс, все работало четко.
Потом создал пользователя для MQTT брокера, ввел данные в web интерфейс контролера все работало четко, но перестал подключаться к брокеру через MQTT Explorer
Все перепробовал не помогло. Решил удалить пользователя MQTT и убрал пароль с web интерфейса. Теперь вообще не подключается к MQTT

root@wirenboard-ASYGHYMY:~# systemctl restart mosquito
Failed to restart mosquito.service: Unit mosquito.service not found.

Где искать подскажите пожалуйста.

Добрый день!
Для диагностики проблемы пришлите, пожалуйста, архив с диагностической информацией контроллера. Создание архива описано в документации.

приложен диагностический архив, доступен только сотрудникам поддержки
(750,1 КБ)

Добрый день!
Вы написали mosquito вместо правильного mosquitto (с двумя «t»), поэтому и видим ошибку:

Unit mosquito.service not found

Правильная команда:

systemctl status mosquitto

Также возможен конфликт настроек авторизации — если вы удалили пользователя, но параметр auth_file остался в конфигурации, Mosquitto продолжит его использовать.

Рекомендую:

  1. Проверить конфигурацию Mosquitto на наличие параметров password_file или acl_file.
  2. Проверить доступность порта 1883, на котором работает брокер:
ss -tuln | grep 1883

root@wirenboard-ASYGHYMY:~# ss -tuln | grep 1883
tcp LISTEN 0 100 127.0.0.1:1883 0.0.0.0:*
root@wirenboard-ASYGHYMY:~# systemctl status mosquitto
● mosquitto.service - Mosquitto MQTT Broker
Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/mosquitto.service.d
└─override.conf
Active: active (running) since Mon 2025-05-05 23:59:56 UTC; 9h ago
Docs: man:mosquitto.conf(5)
man:mosquitto(8)
Main PID: 1746 (mosquitto)
Tasks: 1 (limit: 4676)
Memory: 9.0M
CPU: 7min 20.316s
CGroup: /system.slice/mosquitto.service
└─1746 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf

May 06 09:14:49 wirenboard-ASYGHYMY mosquitto[1746]: 1746522889: Client wb-mqtt-homeui-dGTUC3TMmE closed its connection.
May 06 09:14:49 wirenboard-ASYGHYMY mosquitto[1746]: 1746522889: Client wb-mqtt-homeui-dGTUC3TMmE closed its connection.
May 06 09:14:49 wirenboard-ASYGHYMY mosquitto[1746]: 1746522889: New connection from 127.0.0.1:43686 on port 1883.
May 06 09:14:49 wirenboard-ASYGHYMY mosquitto[1746]: 1746522889: New client connected from 127.0.0.1:43686 as NodeRed-tmp-86030d73c7cfadcc (>
May 06 09:14:49 wirenboard-ASYGHYMY mosquitto[1746]: 1746522889: Bad socket read/write on client NodeRed-tmp-86030d73c7cfadcc: Quota exceeded
May 06 09:14:49 wirenboard-ASYGHYMY mosquitto[1746]: 1746522889: New connection from 127.0.0.1:43690 on port 1883.
May 06 09:14:49 wirenboard-ASYGHYMY mosquitto[1746]: 1746522889: New client connected from 127.0.0.1:43690 as mqttjs_b5076cad (p2, c1, k60).
May 06 09:14:49 wirenboard-ASYGHYMY mosquitto[1746]: 1746522889: Bad socket read/write on client mqttjs_b5076cad: Quota exceeded
May 06 09:14:50 wirenboard-ASYGHYMY mosquitto[1746]: 1746522890: New connection from 127.0.0.1:33542 on port 1883.
May 06 09:14:50 wirenboard-ASYGHYMY mosquitto[1746]: 1746522890: New client connected from 127.0.0.1:33542 as netty-mqtt/2aFD60ST (p1, c1, k>

lines 1-24/24 (END)

вт, 6 мая 2025 г. в 12:13, Aleksandr Khlebnikov через Wiren Board Support <info@wirenboard.com>:

Добрый день!
Ожидаемый вывод команды:

root@WB65-A4B6F4W4:~# ss -tuln | grep 1883
tcp   LISTEN 0      100                        0.0.0.0:1883       0.0.0.0:*
tcp   LISTEN 0      100                           [::]:1883          [::]:*

Если у вас в выводе указан 127.0.0.1:1883, то это значит, что Mosquitto слушает только локальные подключения, а внешние подключения с других устройств недоступны.

password_file в default.conf указан нужный пользователь и зашифрованный пароль.
acl_file в default.conf тоже указан верный пользователь
user root
topic readwrite #
topic readwrite $SYS/#

веб интерфейс же работает. Как бы он подключился если бы ошибка тут была.

Или я что то не правильно понимаю?

дело в том что он и локально не подключается

Добрый день!
Если бы Mosquitto действительно не работал, то в первую очередь перестал бы работать веб-интерфейс, так как он активно использует MQTT для отображения устройств, значений и управления. Это один из самых надёжных индикаторов работоспособности брокера.

Так что если веб-интерфейс работает — скорее всего, Mosquitto запущен, но ограничен по доступу.

что мне сделать чтоб подключиться через MQTT Explorer к топикам?

Добрый день!
Необходимо привести настройки к следующему виду:

root@WB65-A4B6F4W4:~# ss -tuln | grep 1883
tcp   LISTEN 0      100                        0.0.0.0:1883       0.0.0.0:*
tcp   LISTEN 0      100                           [::]:1883          [::]:*

То есть заменить 127.0.0.1 на 0.0.0.0, чтобы брокер Mosquitto слушал на всех сетевых интерфейсах.

мне поправить это в файле 10listeners.conf или mosquitto.conf?

Исправил

root@wirenboard-ASYGHYMY:~# ss -tuln | grep 1883
tcp LISTEN 0 100 0.0.0.0:1883 0.0.0.0:*

ура! Подключилось. Спасибо!
что теперь сделать чтоб из вне подключиться по статике? порт пробросить в роутере?

Добрый день!
Можно сделать вот так — через Tailscale. Это надёжный и удобный способ удалённого доступа к контроллеру.

Открывать контроллер в интернет напрямую крайне не рекомендую, так как это небезопасно и может привести к несанкционированному доступу.

Альтернативный вариант — настроить VPN-сервер и заходить в локальную сеть через него. Такой подход обеспечит защищённый канал и контроль доступа.
Остались ли еще вопросы?

Хорошо. Спасибо. Только заметил. При подключении локально не отображаются топики SprutHub

Добрый день!
По SprutHub рекомендую:

  1. Проверить состояние службы:
  2. Проверить конфигурационные файлы — возможно, есть ошибки или сбои при запуске.

Также советую создать отдельную тему на портале, чтобы удобнее и точнее отслеживать и обсуждать проблему. Это ускорит диагностику и решение.

Хорошо. Спасибо большое за помощь!. Тогда можно эту закрывать.

1 лайк