Функционал

HWID — ограничение устройств

Защита подписки от несанкционированного использования на нескольких устройствах по аппаратному идентификатору.

Активация

⚠️
HWID работает только при запущенном SUBPAGE. Без него устройства не идентифицируются и лимит не применяется.

Шаг 1 — Подготовка: очистка устройств

Перед включением HWID рекомендуется очистить накопленную историю устройств у всех клиентов, чтобы старые записи не блокировали пользователей сразу после активации.

  • 1Перейдите в веб-админке → Отчёты → Устройства клиентов
  • 2Выполните массовую очистку устройств — удалите все записи HWID по всем пользователям.
💡
Это позволит каждому пользователю заново авторизовать свои устройства уже в рамках нового лимита, без ложных блокировок.

Шаг 2 — Отключение кеширования в SUBPAGE

Кеширование Redis в SUBPAGE может мешать корректной работе HWID — кешированный ответ отдаётся без проверки устройства. Отключите его в файле .env SUBPAGE:

.env (SUBPAGE)
USE_REDIS=false

После изменения перезапустите SUBPAGE:

bash
systemctl restart subpage

Шаг 3 — Включение HWID в веб-админке

  • 1Откройте веб-админку → Настройки → SUBPAGE
  • 2Включите переключатель «Активировать лимит устройств по HWID» (hwid_limit_enabled).
  • 3Сохраните настройки.
✅
После включения пользователи с заполненным лимитом устройств будут получать заглушку вместо подписки при попытке подключиться с нового устройства.

Агрессивный режим — требовать X-HWID

Для более жёсткого контроля на той же странице Настройки → SUBPAGE включите «Принудительно требовать X-HWID от приложений». При этом любой клиент, не передающий заголовок X-HWID, получит заглушку «Приложение не поддерживается» вместо ключей подписки.

  • 1Веб-админка → Настройки → SUBPAGE
  • 2Переключатель «Принудительно требовать X-HWID от приложений» (REQUIRE_HWID в конфиге subpage)
  • 3Сохраните. В .env SUBPAGE этот параметр больше не настраивается.
⚠️
Браузеры и запросы на веб-страницу подписки X-HWID не передают — они не затрагиваются этим параметром. Ограничение применяется только к VPN-приложениям, запрашивающим текстовую подписку.

Основной функционал

💡
HWID идентифицирует устройство по аппаратному идентификатору, который передаёт VPN-приложение в заголовке X-HWID при запросе подписки через SUBPAGE. Каждое новое устройство добавляется в список — пока лимит не исчерпан.

Что видит пользователь при превышении лимита

При попытке получить подписку с нового (непривязанного) устройства — SUBPAGE возвращает заглушку с сообщением о превышении лимита устройств.
Пользователь видит в боте кнопку «Мои устройства» — там отображается список привязанных устройств с датой последнего подключения. Удалить устройство можно только после первой успешной оплаты подписки.

Управление устройствами пользователем

⚠️
Удаление только после оплаты подписки. Клиент может удалить устройство в боте и в личном кабинете только если у него уже есть успешная оплата именно подписки (не докупка GB и не расширение лимита устройств). Та же проверка, что для докупки трафика.

Если оплаты нет (триал, ещё не продлевал), показывается сообщение: «Управлять своими устройствами можно только после первого продления подписки». Список устройств и переименование доступны всегда. Администратор в карточке клиента удаляет устройства без этого ограничения.
Через бота
Кнопка «Мои устройства» в главном меню. Клиент видит список и может задать имя. Кнопка удаления появляется после первой успешной оплаты подписки.
Через Личный кабинет
Раздел устройств в кабинете (WEBSITE_DEVICES_ENABLED=1). Просмотр и имя — всегда; удаление — только после оплаты подписки, иначе баннер с тем же текстом.

Абуз триала по HWID

В Отчёты → HWID Control → Абуз триала включается живая проверка в xuiweb: несколько неоплаченных аккаунтов на одном устройстве в окне trial_days + 1 со регистрации не получают ключи (заглушка HWID_BLOCKED). HWID в blocklist не добавляется — после оплаты этого аккаунта ключи снова выдаются.

Управление устройствами администратором

  • 1Откройте веб-админку → Пользователи → найдите нужного клиента.
  • 2Нажмите «Подробнее» — откроется карточка клиента.
  • 3В разделе «Устройства» можно просмотреть все привязанные HWID и удалить любое из них.
💡
Массовую очистку устройств по всем пользователям можно выполнить через Отчёты → Устройства клиентов.