После включения пароля для WEB не загружается список доступных параметров MQTT

После включения пароля для доступа к WEB-интерфейсу WB7.4 (Установка пароля на веб-интерфейс контроллера Wiren Board (Debian Bullseye) — Wiren Board) перестает загружаться список доступных параметров MQTT в MasterSCADA 4D на WB7.4 (не работает поиск), тоже самое и с программой MQTT Explorer.
При этом, если вручную добавить топики в MasterSCADA 4D, то их опрос работает.

Как сделать, чтобы заработал поиск доступных параметров MQTT на WB7.4 при включенном пароле для доступа к WEB интерфейсу?

Добрый день. Что такое “список доступных параметров”, каким образом он получается Подключение к какому интерфейсу, с какими параметрами? Предположу что связано с тем что неавторизованные внешние подключения к MQTT - уже недоступны, после применеи защиты паролем.

Добрый день.

Это терминология из справки MasterSCADA 4D:)

Вот на примере программы MQTT Explorer. На первом WB7, где не установлен пароль для доступа к WEB-интерфейсу WB7, открывается “дерево топиков” - все работает

А вот второй WB7, где установлен пароль для доступа к WEB-интерфейсу WB7, при попытки подключиться выдает сообщение “Disconnected from server” и не открывает “дерево топиков”:

Аналогичная ситуация и с MS4D, при попытки загрузить “дерево топиков” выдает ошибку:


При этом вручную можно добавлять топики в MS4D, данные передаются.

Обратите внимание, при установке пароля если просто следовать инструкции - вы запрещаете доступ по сети к MQTT. Так что это - совершенно нормальное поведение.
Естественно пароль просто на интерфейс без запрета анонимного подключения - бессмыссленен.

Если я правильно понял, то надо установить логин/пароль на доступ по MQTT?

Если мы ставим пароль на доступ к MQTT брокеру, то какой смысл устанавливать логин/пароль для доступа к WEB-интерфейсу?

Да, если требуется доступ к mqtt - то надо.

Это совсем разные механизмы. В случае пароля на web - используется штатный ws/mqtt прокси и доступ к MQTT обеспечивается через него. При этом доступ закрывается паролем nginx.

У меня следующая задача, на WB7 я устанавливаю RT MasterSCADA 4D, соответственно на localhost из RT MasterSCADA 4D должен быть доступ к MQTT-брокеру WB7.
Все внешние подключения к MQTT-брокеру и Web-интерфейсу надо запаролить.

В этой статье Установка пароля на веб-интерфейс контроллера Wiren Board (Debian Bullseye) — Wiren Board написано, что мы должны файл /etc/mosquitto/conf.d/10listeners.conf привести к виду, как в статье, по сути добавить лишь “127.0.0.1”

Для чего мы добавляем 127.0.0.1?

Я уже настроил логин/пароль для MQTT-брокера, поэтому в “allow_anonymous” установил “false” и если 127.0.0.1 убрать в строчке с 1883 портом, то начинает работать поиск топиков в RT MS4D установленном на WB7.

Очевидно чтобы ограничить слушающий интерфейс.
Если при этом доступ анонимный - то пароль на интерфейс - бессмысленен.

Это я уже понял:)

Прокомментируйте это, так можно делать?

Да, конечно можно.
Главное - чтобы не было listners с анонимным доступом и работающих с нешними интерфейсами.