Описание
На ТД поддержан способ портальной авторизации по упрощенной схеме.
При первом подключении клиента никто не знает о нём. Весь клиентский трафик блокируется, кроме:
- DHCP
- DNS
- Запросы до адреса портала
- HTTP/HTTPS из белого списка
ТД пытается пройти MAB (MAC Authentication Bypass) авторизацию на RADIUS сервере, подставляя MAC адрес клиента в атрибуты User-Name и User-Password запроса Access-Request к RADIUS серверу. Так-как внешняя системе ничего не знает о данном клиенте, она присылает Access-Reject.
Клиент обращается на HTTP ресурс. ТД перехватывает его запрос и отправляем клиенту ссылку на гостевой портал, который был задан в настройках SSID (portal-profile). Клиент переходит на портал по полученной ссылке, которая содержит в себе:
- switch_url – URL куда перенаправить клиента после авторизации на портале
- ap_mac -– MAC адрес ТД к которой подключен клиента
- client_ma – MAC адрес клиента
- wlan – имя SSID к которому подключен клиент
- redirect – URL который запрашивал клиент
Пример ссылки :
https://eltex-co.ru/?switch_url=http://redirect.loc:10081&ap_mac=68:13:E2:35:1F:30&client_mac=38:d5:7a:e1:e0:13&wlan=Portal-SSID&redirect=http://www.msftconnecttest.com/connecttest.txt
После саморегистрации пользователя на гостевом портале через форму портала, клиенту возвращается ссылка редиректа на ТД. Возможные параметры:
- username – имя пользователя;
- password – пароль пользователя;
- redirect_url – адрес URL, на который клиент хотел попасть изначально, портал может подменил адрес. В нашем примере клиент пытался подключиться к http://www.msftconnecttest.com но его перенаправили на https://eltex-co.ru;
- error_url – адрес URL, куда будет переадресован клиент в случае ошибки авторизации. В нашем примере этот параметр не используется
Имена параметров можно переопределить в конфигурации ap-profile
Пример ссылки:
http://redirect.loc:10081/?username=60336144&password=3hMYEPEW0tdb&buttonClicked=4&redirect_url=https://eltex-co.ru/
Клиент переходит по этой ссылке. ТД вычитывает из нее username и password, подставляет их в атрибуты User-Name и User-Password запроса Access-Request. Отправляет запрос на RADIUS сервер. После успешной авторизации клиента на RADIUS сервер, ТД снимает ограничения на доступ и перенаправляет клиента на redirect_url.
После отключения от ТД и подключения к текущей или другой ТД (к тому же SSID), авторизация будет проходить по MAC адресу, на запрос Access-Request MAB авторизации вернется Access-Accept, так как RADIUS сервер знает клиента ( MAB авторизация запрашивается при подключение клиента к ТД, если ТД не "помнит" клиента). Перенаправления клиента на портал происходить не будет, до тех пор, пока MAC адрес клиента не будет удален из БД.
Конфигурация WLC
Пример настроек будет выполнен на factory конфигурации WLC
Порядок настройки:
- Создаем белый список URL
- Создаем белый список IP адресов
- Создаем portal-profile
- Создаем radius-profile
- Создаем ssid-profile
- Добавляем ssid-profile в ap-location
Создаем белый список URL, он будет содержать URL и RegExp, доступ к этим адресам будет разрешён
object-group url white_url url eltex-co.ru regexp '(.+\.)eltex-co\.com' exit
Создаем белый список IP адресов, доступ к этим адресам будет разрешён
object-group network white_ip ip prefix 192.168.0.0/24 ip prefix 192.168.1.0/24 ip prefix 100.110.0.0/23 exit
Создаем portal-profile
Описание параметров:
redirect-url – aдрес портала;
age-timeout – временной интервал в течении которого точка доступа "помнит" клиента;
verification-mode – режим работы портала;
white-list – белый список URL;
white_ip – белый список IP адресов.portal-profile portal-pr redirect-url https://eltex-co.ru age-timeout 10 verification-mode external-portal white-list domain white_url white-list address white_ip exit
Создаем radius-profile
radius-profile portal_radius auth-address 192.168.4.5 auth-password ascii-text encrypted 92BB3C7EB50C5AFE80 auth-acct-id-send acct-enable acct-address 192.168.4.5 acct-password ascii-text encrypted 92BB3C7EB50C5AFE80 acct-periodic acct-interval 300 exit
Создаем ssid-profile
ssid-profile portal_test ssid portal_test portal-enable portal-profile portal-pr vlan-id 3 band 5g enable exit
Добавляем ssid-profile в ap-location
ap-location default-location description default-location mode tunnel ap-profile default-ap ssid-profile portal_test exit