Вернуть старое меню
Бесплатно, 24/7 8 (800) 775-97-42
Country flag RU
Country flag EN
Country flag DE
₽ RUB
$ USD
€ EUR
Выбрать VPS
Маркетплейс
О нас
Сообщество
Поддержка
Баланс:
Бонусы:
Войти
Выйти
Зарегистрироваться
ГОТОВЫЕ ТАРИФЫ
Ref icon
VPS Старт От 139 рублей/мес
Ref icon
VPS Мощные Мощные серверы по выгодной цене
Ref icon
VPS Windows Удобные конфигурации для работы с ОС Windows
Ref icon
VPS Быстрые NVMe Максимальная скорость с промышленными NVMe дисками
Ref icon
VPS Plesk Настройте сервер под себя в несколько кликов
Ref icon
VPS с 1C для бухгалтеров Оптимизированные под 1C серверы
Ref icon
VPS для трейдинга Установите торговые терминалы за 1 клик
Ref icon
VPS для геймеров Мощное железо для мощных рейдов
Ref icon
VPS для бизнеса Настроить любой параметр сервера
Ref icon
Посмотреть все тарифы
Card icon Своя конфигурация
Удобный конфигуратор позволит вам настроить любой параметр сервера, а мы предложим за него лучшую цену.
Собрать
Card icon Бесплатный тест на 3 дня
Только для новых пользователей. Возьмите на тест любой сервер до 3000 рублей, проверьте приложения и программы, установив их на VPS.
Попробовать
АККАУНТ Мои серверы Домены Заказать Настройки Партнеру
КЛИЕНТАМ
О компании Входим в топ-15 IAAS в России
Дата-центры 17 ЦОД уровня Tier III в 7 странах
Аттестация по ФСТЭК Поможем с гос. лицензированием
Бонусная программа Накопительная система лояльности
Card icon Пинг до дата-центров
Измерьте ping от вас до всех наших дата-центров. Мы подберем тот, который подходит для вас идеально.
Измерить
Card icon Бесплатный тест на 3 дня
Только для новых пользователей. Возьмите на тест любой сервер до 3000 рублей, проверьте приложения и программы, установив их на VPS.
Попробовать
АККАУНТ Мои серверы Домены Заказать Настройки Партнеру
КЛИЕНТАМ
Справочник Пошаговые инструкции, как настроить VPS
FAQ Частые вопросы о настройке VPS и сервисе
Новости и события Новости сервиса, информация о событиях и спецпроектах компании
Card icon Соцсети
Наш блог на Хабре, выступления, новости компании.
Присоединиться
Card icon Бесплатный тест на 3 дня
Только для новых пользователей. Возьмите на тест любой сервер до 3000 рублей, проверьте приложения и программы, установив их на VPS.
Попробовать
АККАУНТ Мои серверы Домены Заказать Настройки Партнеру
Бесплатно, 24/7 8 (800) 775-97-42
Mobile menu button
Выбрать VPS
Mobile card icon
Своя конфигурация Удобный конфигуратор позволит вам настроить любой параметр сервера, а мы предложим за него лучшую цену.
Собрать
Ref icon
VPS Старт От 139 рублей/мес
Ref icon
VPS Мощные Мощные серверы по выгодной цене
Ref icon
VPS Windows Удобные конфигурации для работы с ОС Windows
Ref icon
VPS Быстрые NVMe Максимальная скорость с промышленными NVMe дисками
Ref icon
VPS Plesk Настройте сервер под себя в несколько кликов
Ref icon
VPS с 1C для бухгалтеров Оптимизированные под 1C серверы
Ref icon
VPS для трейдинга Установите торговые терминалы за 1 клик
Ref icon
VPS для геймеров Мощное железо для мощных рейдов
Ref icon
VPS для бизнеса Настроить любой параметр сервера
Ref icon
Посмотреть все тарифы
Ref icon
Бесплатный тест на 3 дня
Маркетплейс
О нас
Mobile card icon
Пинг до дата-центров Измерьте ping от вас до всех наших дата-центров. Мы подберем тот, который подходит для вас идеально.
Измерить
О компании Входим в топ-15 IAAS в России
Дата-центры 17 ЦОД уровня Tier III в 7 странах
Аттестация по ФСТЭК Накопительная система лояльности
Бонусная программа Накопительная система лояльности
Сообщество
Mobile card icon
Соцсети Наш блог на Хабре, выступления, новости компании.
Присоединиться
Справочник Пошаговые инструкции, как настроить VPS
FAQ Частые вопросы о настройке VPS и сервисе
Новости и события Новости сервиса, информация о событиях и спецпроектах компании
Поддержка
Country flag RU
Country flag EN
Country flag DE
₽ RUB
$ USD
€ EUR
Войти
Зарегистрироваться
Личный кабинет
Мои серверы
Домены
Баланс: Бонусы:
Заказать
Настройки
Партнеру
Выйти
Мои серверы
Домены
Заказать
Настройки
Партнеру
  • ВЫБРАТЬ VPS
  • ДАТА-ЦЕНТРЫ
  • СПРАВОЧНИК
  • ПОДДЕРЖКА
  • ВОЙТИ
RuVDS/Справочник/Развертывание ПО на VPS сервере/Дополнительные меры безопасности в Mosquitto

Дополнительные меры безопасности в Mosquitto

137 просмотров 0 2025-03-26

ACL (Access Control List) – механизм управления доступом, который позволяет ограничивать права клиентов MQTT-брокера Mosquitto на чтение, запись или доступ к определённым топикам. Поскольку брокер, установленный на VPS, доступен из публичной сети, использование файла ACL становится особенно важно для обеспечения безопасности ваших данных. В статье разберём дополнительные меры безопасности в Mosquitto, в том числе управление ACL и настройки брандмауэра UFW.

Создание и настройка ACL

Для создания файла ACL перейдите в каталог Mosquitto:

$ cd /etc/mosquitto/

И там создайте файл при помощи текстового редактора nano:

$ sudo nano acl

Файл ACL имеет примерно следующую структуру:

# Формат записи правила в файле ACL:
# user <имя-пользователя>
# topic [read|write|readwrite] <MQTT-топик>

# Разрешить пользователю 'mosquitto-user' полный доступ ко всем топикам
user mosquitto-user
topic readwrite #

# Разрешить пользователю 'another-mosquitto-user' публиковать записи в топики sensors/+
user another-mosquitto-user
topic write sensors/+

# Разрешить пользователю 'monitor-mosquitto-user' читать записи в топиках sensors/+
user monitor-mosquitto-user
topic read sensors/+

# Запретить доступ к системным топикам
topic read $SYS/#

После создания файла внесите изменения в конфигурацию Mosquitto:

$ sudo nano /etc/mosquitto/mosquitto.conf

А именно, добавьте в файл конфигурации строку, указывающую путь к файлу ACL:

acl_file /etc/mosquitto/acl

После чего перезапустите Mosquitto:

$ sudo systemctl restart mosquitto

В файле ACL можно использовать подстановочные знаки:

  • + – заменяет любой один подуровень, например, запись devices/+/data означает, что вместо + будет использоваться любой уровень: devices/sensors/data, devices/device1/data и т.п.;
  • # – заменяет любое количество уровней, например, запись devices/# означает, что вместо # будет использоваться любое количество уровней: devices/sensors/data, devices/device1 и т.п.

Кроме того, в файле ACL вы можете применять такой инструмент, как pattern. Это механизм динамического управления доступом к MQTT-топикам. Он позволяет автоматически назначать права пользователям без явного указания их имён в файле ACL. Другими словами, вместо явного задания топиков для каждого пользователя можно использовать pattern с подстановочными переменными:

  • %u – имя пользователя MQTT-клиента;
  • %c – идентификатор MQTT-клиента.

Например, строка pattern readwrite devices/%u/# означает, что, когда подключается пользователь sensor1, он получает доступ к devices/sensor1/#. В свою очередь, когда подключается пользователь sensor2, он может работать с devices/sensor2/#. Таким образом, нет необходимости вручную добавлять правила для каждого из пользователей.

Если же аутентификация идёт без логина, а устройства используют уникальные идентификаторы, то удобно использовать правила, типа:

pattern readwrite devices/%c/#

При добавлении правил в файл ACL следует помнить, что применяется первое совпадающее правило, а остальные правила игнорируются. Например, если сначала разрешить доступ к #, а потом запретить devices/#, то в этом случае запрет работать не будет.

Настройка брандмауэра

Дополнительной мерой, позволяющей повысить уровень безопасности виртуального сервера, является открытие только используемых портов в брандмауэре UFW. По умолчанию Mosquitto использует порт 1883 для незашифрованного соединения и порт 8883 для TLS. Исходя из этого, необходимо создать в UFW правила, разрешающие доступ к серверу через данные порты, или через порт, используемый в вашей конфигурации:

$ sudo ufw allow 1883/tcp
$ sudo ufw allow 8883/tcp

Чтобы убедиться в наличии данных правил в брандмауэре, выведите состояние UFW командой:

$ sudo ufw status
Вывод статуса брандмауэра UFW - Дополнительные меры безопасности в Mosquitto

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

Статья полезна?

Да  Нет
Похожие статьи
  • make com: Авторизация Bearer токеном на примере API RUVDS
  • Как установить Flask на Ubuntu 24.04
  • Как настроить HTTPS-доступ к веб-интерфейсу Gitea
  • Как установить Gitea на Linux
  • Как установить Node Exporter на Linux
  • Как установить VictoriaMetrics на Ubuntu 24.04
Оставить комментарий Отменить ответ

Популярные статьи
  • Как подключиться по RDP из-под MacOS
  • Как установить PostgreSQL и pgAdmin4 в Ubuntu 20.04
  • Управление портами в Linux (Ubuntu/Debian/CentOS)
  • Настройка VPN с использованием WireGuard
  • Как извлекать и разархивировать файлы .tar.gz в Linux-системах
Разделы Справочника
  • Настройка VPS Сервера
  • Начало работы
  • Особенности виртуального сервера
  • Партнерам
  • Развертывание ПО на VPS сервере
  • Сетевые настройки сервера
GAME OVERNIGHT
CLOUDRUSSIA
STRATONET
SPACE DC
ARCTIC DC
VPS/VDS серверы:
Тестовый период
Дешевый VPS
VPS Старт
VPS Мощные
VPS Windows
VPS Быстрые NVMe
VPS с 1C
Форекс VPS
Игровые серверы
VPS для бизнеса
Пинг до дата-центров
Услуги:
Маркетплейс
Панель ispmanager
Антивирусная защита
Аренда лицензий
Облачное хранилище
VPS серверы с Plesk Obsidian
Колокация
Looking Glass
DNS
Клиентам:
О компании
Дата-Центры
Новости
Аттестация по ФСТЭК
Бонусная программа
Публичная Оферта
Соглашение об уровне услуг
Политика обработки персональных данных
Сувениры от RuVDS
Партнерам:
Для прессы
Партнерская программа
Отзывы
API
Помощь:
Справочник
FAQ
Созданных
серверов
231504
Huawey
Supermicro
Cisco
Intel
Microsoft
ISP
Kaspersky
RDCA Logo

«Креатив года» Премия ЦОДы.рф 2021, 2025

RDCA Logo

«Хостер года» Премия ЦОДы.рф 2023

RDCA Logo

«Человек года» Премия ЦОДы.рф 2024

RuVDS
support@RUVDS.com
8 (800) 775-97-42
+7 (495) 135-10-99
МЫ В СОЦИАЛЬНЫХ СЕТЯХ
Copyright © 2025 RuVDS. Все права защищены.
ООО "МТ ФИНАНС" | ОГРН 1157746680332
Оставить отзыв

Условия получения бонуса за оставленный отзыв:

  1. Напишите про нас на любом из специализированных сайтах для отзывов.
  2. Пришлите нам текст отзыва и ссылку на ваш отзыв.
  3. После проверки, мы опубликуем ваш отзыв у нас на сайте и также начислим бонус на ваш баланс.
Strong Testimonials form submission spinner.

Обязательное поле

Укажите электронную почту вашего аккаунта RUVDS
Укажите ссылку на ваш отзыв
rating fields
Поставьте оценку серверам RUVDS
Оставить отзыв
Strong Testimonials form submission spinner.

Обязательное поле

Укажите электронную почту вашего аккаунта RUVDS
Укажите ссылку на ваш отзыв
rating fields
Поставьте оценку серверам RUVDS