Page tree
Skip to end of metadata
Go to start of metadata

Список HTTP аттрибутов

Портал может отправлять точке следующие HTTP аттрибуты в  заголовке.

Такие при авторизации:

  • X-Eltex-CP-Eltex-User-State — индекс сценария пользователя.
  • X-Eltex-CP-Eltex-State-Begin-Date — время начала сценария
  • X-Eltex-CP-Eltex-User-Create-Date — время создания пользователя.
  • X-Eltex-CP-Eltex-Validity-Period — период жизни УЗ пользователя.
  • X-Eltex-CP-Simultaneous-Use — лимит одновременного использования УЗ на разных устройствах.
  • X-Eltex-CP-State-Count — количество сценариев (? отсутствует в документации NBI).
  • X-Eltex-CP-Eltex-State-Bandwidth-Max-Down-X — ограничение скорости загрузки. (работают только с включенным QoS на точке)
  • X-Eltex-CP-Eltex-State-Bandwidth-Max-Up-X — ограничение скорости выгрузки. (работают только с включенным QoS на точке)
  • X-Eltex-CP-Eltex-State-On-X — флаг, означающий что пользователь находится на сценарии X.
  • X-Eltex-CP-Eltex-State-Session-Timeout-X — таймаут сессии согласно сценарию X.
  • X-Eltex-CP-Eltex-State-Start-Session-Before-Redirect-X — флаг, означающий что сессию нужно начинать до редиректа согласно сценарию X. (добавлено по требованиям сбербанка чтобы отслуживать траффик неавторизованных пользователей)

Также портал отправляет точке заголовок для смены сценария:

  • X-Eltex-CP-Eltex-User-State — индекс нового сценария пользователя. Отправляется в случае нажатия кнопки "продолжить", а также когда пользователь по ошибке попал на /adv-redirect, но при этом реклама на портале не включена.

Портал получает от точки следующие заголовки:

  • X-Eltex-CP-Domain — домен виртуального портала.
  • X-Eltex-CP-SSID — SSID, который настроен на портал.
  • X-Eltex-CP-Name — название виртуального портала.
  • X-Eltex-NAS-IP — IP-адрес точки доступа.
  • X-Eltex-CP-State — состояние пользователя.
  • X-Eltex-CP-Session-End-Reason — причина завершения сессии (time-over, traffic-over, session-over).
  • X-Eltex-CP-Session-Bound — число, которое для каждого значения атрибута X-Eltex-CP-Session-End-Reason будет интерпретироваться по своему. Для time-over - кол-во секунд, заданное на радиусе через Eltex-Work-Time-Limit, traffic-over - кол-во байт, заданное на радиусе через.
  • Eltex-Traffic-Limit, session-over - кол-во секунд сессии, заданное через радиус или через настройки CP.
  • X-Eltex-CP-Client-MAC — MAC-адрес клиента.
  • X-Eltex-CP-Client-IP — IP-адрес клиента.
  • X-Eltex-CP-AP-MAC — MAC-адрес точки доступа.
  • X-Eltex-CP-Client-Login — логин клиента.
  • X-Eltex-CP-AP-IP-Alias — алиас точки доступа.
  • X-Eltex-CP-AP-Location — географический домен ТД.

Парметры:

  • X-Eltex-CP-Eltex-State-Bandwidth-Max-Down-X
  • X-Eltex-CP-Eltex-State-Bandwidth-Max-Up-X

Работают только с включенным Client QoS Global Admin Mode на точке! Настройка в EMS


Алгоритм работы с портальными пользователями на точках доступа Eltex


Пример использования

Изначально пользователь считается неавторизованным, будет направлен по ссылке из настроек SSID и ограничен в доступе External URL + белыми списками APB.

Инструкции для настройки:


При подключении пользователя точка передает информацию об устройстве пользователя в заголовках:

  • 'HTTP_X_ELTEX_CP_AP_LOCATION' => 'LOCATION'

  • 'HTTP_X_ELTEX_CP_ORIGIN_URL' => 'http://init-p01st.push.apple.com/?v=1'

  • 'HTTP_X_ELTEX_CP_SSID' => 'SSID'

  • 'HTTP_X_ELTEX_CP_CLIENT_IP' => 'CLIENT_IP'

  • 'HTTP_X_ELTEX_NAS_IP' => 'IP_AP'

  • 'HTTP_X_ELTEX_CP_AP_MAC' => 'MAC_AP'

  • 'HTTP_X_ELTEX_CP_DOMAIN' => 'PORTAL_DOMAIN'

  • 'HTTP_X_ELTEX_CP_STATE' => 'not-auth'

  • 'HTTP_X_ELTEX_CP_CLIENT_MAC' => 'MAC'

  • 'HTTP_X_ELTEX_CP_NAME' => 'PORTAL'

Пользователь будет считаться неавторизованным пока на точку для данного устройства не придёт сценарий. Пример сценария ( с лимитом времени доступа 30 минут, трафика 1 ГБайт и скоростью 5 Мбит/с):

  • X-Eltex-CP-Username: MAC

  • X-Eltex-CP-Eltex-User-State: 1

  • X-Eltex-CP-Eltex-Traffic-Limit: 1048576000

  • X-Eltex-CP-State-Count: 1

  • X-Eltex-CP-Eltex-State-Bandwidth-Max-Down-1: 5120000

  • X-Eltex-CP-Eltex-State-Bandwidth-Max-Up-1: 5120000

  • X-Eltex-CP-Eltex-State-On-1: true

  • X-Eltex-CP-Eltex-State-Session-Timeout-1: 1800

  • X-Eltex-CP-Eltex-State-Start-Session-Before-Redirect-1: false

  • X-Eltex-CP-Eltex-State-Traffic-Limit-1: 1048576000

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

Проверка полученных сценариев

Для проверки успешности применения высланных Вами на точку сценариев воспользуйтесь командой get cp-auth-client-scenario в CLI ТД. Эта команда выведет список авторизованных на ТД устройств их квот для них. Если данные сходятся, то заголовки отправлены корректно.

Портальная авторизация через RADIUS-сервер

Описание взаимодействий:

  • При подключении клиента ТД проксирует все его запросы на портал и шлет клиенту redirect по External URL из настройки SSID (для портальной авторизации через radius параметр Verification в блоке Captive Portal настроек SSID должен быть "RADIUS").
  • На портале клиент вводит свои учетные данные. По учетным данным клиента портал создаёт пользователя на radius-сервере или проверяет наличие данного пользователя.
  • На ТД перехватывается HTTP POST от клиента к порталу и вычитываются поля "login" и "password". По этим данным ТД запрашивает у radius-сервера доступ в сеть для данного пользователя.
  • Если пользователь есть на radius-сервере и ему разрешен доступ в сеть то на ТД от radius-сервера приходит Accept и для данного пользователя ТД начинает отправлять аккаунтинг на radius- сервер и пользователь получает доступ в сеть.
     

Формат HTTP-заголовков и атрибуты для radius-авторизации можно посмотреть в дампе ниже.

Дамп успешной портальной авторизации через radius-сервер.

radius and http for radportal.pcapng

  • No labels