Skip to content

Latest commit

 

History

History
45 lines (27 loc) · 3.56 KB

File metadata and controls

45 lines (27 loc) · 3.56 KB

ExternalBind

Опциональный модуль в Modules/ExternalBind/: для заданных URL привязки Lite / Online запрос считается «локальным» при классификации (RequestModel.IsLocalIp).

В manifest.json по умолчанию "enable": false. В корневом README модуль перечислен в таблице модулей.

Зачем нужен

Несколько контроллеров Online (Filmix Pro, KinoPub, GetsTV и аналоги) завершают привязку устройства / выдачу токена только если requestInfo.IsLocalIp == true. Обычно флаг выставляется лишь для адреса клиента из локальной сети (см. IPNetwork.IsLocalIp).

Если ссылку привязки открыть с другого компьютера, через обратный прокси или в любой схеме, где браузер не определяется как локальный IP, эти эндпоинты отвечают ошибкой вроде «is not local ip», и сценарий не завершается.

ExternalBind подключается рано в цепочке middleware (EventListener.Middleware) и только для перечисленных ниже путей принудительно выставляет IsLocalIp = true, чтобы шаг привязки мог выполниться.

Затронутые пути

Точное совпадение пути (без учёта регистра):

Путь Назначение
/lite/filmixpro Привязка Filmix Pro
/lite/rhs/bind Привязка Rezka
/lite/kinopubpro Привязка KinoPub Pro
/lite/getstv/bind Привязка GetsTV
/lite/vokinotk Привязка Vokino
/lite/iptvonline/bind Привязка IPTV Online

Чтобы добавить или изменить пути, правьте ExternalBindPaths в ModInit.cs.

Включение

В manifest.json установите "enable": true и перезагрузите хост, чтобы модуль подхватился.

По умолчанию enable: false — URL привязки остаются «только для локальной сети», пока вы явно не включите модуль.

WAF и безопасность

При IsLocalIp == true поведение WAF может отличаться от обычного удалённого клиента (например, в init.conf параметр bypassLocalIP может ослаблять часть проверок WAF для таких запросов). Включение ExternalBind расширяет круг тех, кто может завершить привязку по перечисленным путям, до любого, кто достучится до сервера по этим URL.

Включайте модуль только если нужны удалённая или проксированная привязка; сохраняйте обычные меры: HTTPS, контроль доступа, файрвол.

Зависимости

  • Реализует IModuleLoaded; отдельных ключей конфигурации нет.
  • Зависит только от Shared; контроллеров и статики в модуле нет.