Гайд по установке Mosquitto на Ubuntu 24.04

Гайд по установке Mosquitto на Ubuntu 24.04

MQTT — один из самых удобных протоколов для обмена данными между устройствами. Он отлично подходит для работы с «умными» системами, промышленной автоматизацией и телеметрией. В этом гайде показано, как развернуть Mosquitto на Ubuntu 24.04 и подключить реальных клиентов.

Всё больше устройств требуют постоянной синхронизации — от термостатов и видеокамер до промышленных датчиков. Чтобы они быстро и стабильно обменивались данными, в умных домах и производственных системах всё чаще используют протокол MQTT. На его основе работает Mosquitto — лёгкий, производительный брокер, идеально подходящий для развёртывания на VPS.

Обсудим, как правильно установить Mosquitto на сервер под управлением Ubuntu 24.04, настроить подключение к брокеру и проверить его работу в реальных условиях.

Аренда VPS/VDS от 219 руб/месяц

Преимущества VPS в AdminVPS:

✓ Бесплатное администрирование

✓ Только быстрые NVMe-диски

✓ Защита от DDoS-атак

✓ Быстрая техподдержка

Аренда VPS/VDS виртуального сервера от AdminVPS — это прозрачная и честная услуга с доступной ценой

Что такое MQTT и как Mosquitto применяется в реальных проектах

Лого Mosquitto

Mosquitto — это компактный, высокопроизводительный брокер MQTT с открытым исходным кодом. Он поддерживает всё, что нужно для реальной эксплуатации: шифрование соединений через TLS, аутентификацию пользователей, управление доступом к топикам. MQTT минимизирует сетевой трафик, экономит заряд батарей на устройствах и надёжен даже при перебоях в сети. Все сообщения пересылаются через центрального посредника, брокера.

Протокол MQTT (Message Queuing Telemetry Transport) появился в конце 90-х годов специально для передачи небольших объёмов данных в условиях нестабильной связи. Первоначально он использовался в нефтяной промышленности для мониторинга трубопроводов — там, где каналы связи ограничены, а задержки могут стоить дорого. С тех пор MQTT стал стандартом и применяется повсюду, от умных чайников до сложных систем промышленной автоматизации.

На практике Mosquitto активно используется в России и по всему миру в самых разных отраслях. В системах умного дома он связывает между собой датчики движения, освещения, климат-контроля и позволяет управлять всем хозяйством через мобильные приложения. На складах крупных логистических компаний, таких как «СДЭК» и Boxberry, брокеры на базе Mosquitto собирают данные с RFID-сканеров и датчиков температурного контроля, чтобы в реальном времени отслеживать условия хранения посылок.

В промышленности Mosquitto применяют для телеметрии на удалённых объектах. «Газпром» и «Роснефть» используют аналогичные системы для передачи показаний с буровых платформ, где подключение нестабильное и дорог каждый байт данных. Mosquitto идеально справляется с задачами доставки статусов оборудования, уровней давления или температуры.

Брокер востребован в агротехе. На фермах Краснодарского края через Mosquitto передаются данные о влажности почвы, температуре воздуха и уровне освещения в теплицах. Эти данные позволяют в автоматическом режиме управлять поливом и вентиляцией, экономя воду и электроэнергию.

Даже в городской инфраструктуре, например, в системах умных остановок в Москве и Казани, Mosquitto помогает передавать информацию о расписании транспорта и погодных условиях в реальном времени.

Секрет популярности Mosquitto прост: он не требует тяжёлого железа, работает даже на бюджетных VPS за 200–300 рублей в месяц и легко масштабируется. При грамотной настройке брокер может обрабатывать тысячи подключений одновременно.

Подготовка сервера перед установкой

Перед установкой стоит убедиться, что система актуальна. Это поможет избежать проблем с зависимостями:

sudo apt update

Убедившись, что всё готово, установите брокер Mosquitto и клиентские утилиты.

  • mosquitto — MQTT-брокер;
  • mosquitto-clients — набор утилит для тестирования и взаимодействия с брокером.

Код для установки:

sudo apt install mosquitto mosquitto-clients

Mosquitto будет установлен как системная служба. Проверить её статус можно командой:

systemctl status mosquitto

Если в ответе видите статус active (running) — установка прошла успешно.

Успешная установка Mosquitto на Ubuntu
Успешная установка Mosquitto на Ubuntu

Если нет — запустите брокер вручную:

sudo systemctl start mosquitto

И добавьте его в автозагрузку:

sudo systemctl enable mosquitto

По умолчанию Mosquitto слушает порт 1883. Чтобы устройства могли связаться с вашим брокером, нужно разрешить доступ к этому порту через файрвол:

sudo ufw allow 1883/tcp

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

Почему стоит использовать отдельный сервер для Mosquitto

Хотя Mosquitto очень лёгкий и нетребовательный к ресурсам, устанавливать его на выделенный сервер — решение, которое оправдывает себя даже в небольших проектах. Важно понимать: MQTT-брокер — это не просто программа, а центральный узел всей инфраструктуры обмена данными.

Если размещать Mosquitto вместе с веб-сервером или базой данных на одной машине, при всплеске нагрузки на сайт или при падении веб-приложения есть риск парализовать и брокер. А потеря доступа к брокеру — это, по сути, остановка всей системы обмена сообщениями между устройствами.

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

На выделенном сервере вы можете настроить отдельные политики брандмауэра, шифрование трафика через TLS, ограничить доступ к порту 1883 только нужным IP-адресам. Это особенно важно для промышленных систем или коммерческих IoT-платформ, где защита данных клиентов стоит на первом месте.

Практика показывает: даже небольшие проекты вроде умного дома на 10–15 устройств выигрывают от выделенного брокера. Это помогает избежать нестабильности работы, когда например, обновление сайта неожиданно приводит к обрыву связи с датчиками освещения или отопления.

При выделении Mosquitto на отдельный сервер гораздо проще настраивать резервное копирование, обновления и мониторинг состояния брокера без риска затронуть другие важные сервисы.

Компания AdminVPS предлагает аренду выделенного сервера в России с полным комплексом услуг по системе «Всё включено».

Проверка работоспособности брокера

Чтобы убедиться, что Mosquitto готов принимать сообщения, стоит провести простой тест.

В первом терминале подпишитесь на тестовый топик:

mosquitto_sub -h localhost -t test

Где:

  • mosquitto_sub — клиент MQTT, который подписывается на топик;
  • -h localhost — подключение к MQTT-брокеру на текущем компьютере;
  • -t test — указание на тестовый MQTT-топик test.

Откроется режим ожидания сообщений. Во втором терминале отправьте сообщение:

mosquitto_pub -h localhost -t test -m "Проверка связи!"

Если всё настроено правильно, сообщение появится в первом окне.

Подключение к Mosquitto из внешней сети

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

sudo nano /etc/mosquitto/mosquitto.conf

Добавьте строки:

listener 1883
allow_anonymous true

Где:

  • listener 1883 — брокер Mosquitto слушает порт 1883;
  • allow_anonymous true — команда разрешает подключение без входа в систему.

Сохраните изменения и перезапустите службу:

sudo systemctl restart mosquitto

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

Графические клиенты для работы с Mosquitto

Несмотря на то, что командная строка — удобный способ для управления MQTT-соединениями, не всем хочется каждый раз прописывать длинные команды. Особенно это становится заметно в крупных проектах, где количество топиков и сообщений идёт на сотни или даже тысячи. Для таких случаев отлично подходят графические клиенты для работы с Mosquitto.

Один из самых популярных и удобных — MQTT Explorer. Это бесплатное приложение, которое визуализирует всю структуру брокера: топики, сообщения, активные подписки и публикации. Программа автоматически строит древовидную карту всех подключений, позволяет в два клика отправлять сообщения, подписываться на новые топики и отслеживать потоки данных в реальном времени.

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

Не менее удобен и MQTTX — кроссплатформенный клиент с простым и понятным интерфейсом. Он позволяет работать сразу с несколькими подключениями, что удобно, если у вас несколько брокеров или разные среды, например, тестовая и продакшн. MQTTX поддерживает сохранение сессий, автоматическое переподключение при обрывах связи и ручную настройку параметров подключения, таких как QoS (качество обслуживания сообщений).

Установка таких клиентов занимает всего несколько минут. Например, MQTTX можно скачать с официального сайта, быстро установить на Windows, macOS или Linux, создать новое подключение, указать IP-адрес вашего VPS, порт (обычно 1883) и сразу приступить к работе. Поскольку в тестовой конфигурации Mosquitto разрешены анонимные подключения, логин и пароль заполнять не нужно, достаточно нажать кнопку Connect.

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

Кроме MQTT Explorer и MQTTX стоит обратить внимание на решения вроде Node-RED — графической среды для визуального программирования IoT-потоков. Через Node-RED можно строить сложные сценарии обмена данными между устройствами и сервером Mosquitto, что удобно при интеграции с домашними автоматизациями или промышленными платформами.

Использование графических клиентов значительно упрощает жизнь как начинающим разработчикам, так и опытным инженерам, сокращая время на тестирование, диагностику и настройку систем на базе Mosquitto.

Заключение

Развёртывание Mosquitto на Ubuntu 24.04 — это надёжная основа для любого проекта, где важна быстрая и стабильная передача данных между устройствами. Брокер одинаково хорошо справляется как с домашними IoT-сетями, так и с промышленными решениями.

Настроив Mosquitto однажды, вы сможете строить на его базе целые системы умных домов, автоматизировать производство или наладить мониторинг удалённых объектов, используя минимальные ресурсы.

Читайте в блоге:

Loading spinner
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

VPN на VPS-сервере

Узнайте, как создать собственный VPN на VPS-сервере для защиты ваших конфиденциальных данных!

Что будем искать? Например,VPS-сервер

Мы в социальных сетях