MQTT сервер: различия между версиями
Внешний вид
Admin (обсуждение | вклад) Нет описания правки |
Admin (обсуждение | вклад) мНет описания правки |
||
Строка 7: | Строка 7: | ||
Код | Код | ||
< | <pre>opkg update | ||
opkg install mosquitto mosquitto-client</pre> | opkg install mosquitto mosquitto-client</pre> | ||
Версия от 20:12, 14 сентября 2025
Для настройки MQTT-сервера на роутере с OpenWRT нужно установить пакеты mosquitto
и mosquitto-client
через SSH или LuCI. После установки настройте mosquitto
, запустите службу и настройте правила фаервола для доступа из вашей локальной сети, чтобы устройства могли подключаться к брокеру на порту 1883 по протоколу TCP.
1. Установка MQTT-брокера (mosquitto
)
- Через SSH:
- Подключитесь к роутеру по SSH.
- Выполните команду для установки пакетов:
Код
opkg update opkg install mosquitto mosquitto-client
- Через LuCI (веб-интерфейс):
- Перейдите в раздел "System" > "Software".
- Нажмите "Update lists" для обновления списка пакетов.
- Найдите пакеты
mosquitto
иmosquitto-client
в списке и установите их.
2. Настройка и запуск сервиса mosquitto
Запустите службу.
Код
/etc/init.d/mosquitto enable /etc/init.d/mosquitto start
- Включите автозапуск при загрузке роутера: В LuCI, в разделе "System" > "Startup", убедитесь, что служба
mosquitto
включена и будет запускаться при загрузке.
3. Настройка фаервола (Firewall)
- Создайте правило: В LuCI, перейдите в "Network" > "Firewall".
- Добавьте правило: для порта 1883 (TCP) на вашей локальной сети (lan):
- Action:
accept
(разрешить). - Protocol:
TCP
. - Source zone:
lan
(или зона, куда подключены ваши клиенты). - Destination zone:
Device (input)
(для получения входящих соединений). - Destination port:
1883
.
- Action:
Пример использования:
- 1. Подключите устройства: Ваши устройства (например, с датчиками и ESP32) настройте на подключение к IP-адресу вашего OpenWRT-роутера по порту 1883.
- 2. Публикация данных: Одно устройство публикует данные (например, температуру) в определенную тему (topic) MQTT, например,
/sensors/temperature
. - 3. Подписка на данные: Другое устройство или веб-сервис подписывается на эту тему, и когда данные публикуются, брокер Mosquitto доставляет их подписчикам.
Таким образом, ваш OpenWRT роутер будет выступать в роли центрального MQTT-брокера для вашего умного дома или IoT-проекта, обеспечивая обмен сообщениями между устройствами.