На ТД поддержан способ портальной авторизации по упрощенной схеме.
При первом подключении клиента никто не знает о нем, ТД пытается пройти MAB (MAC Authentication Bypass) авторизацию на NAC сервере, подставляя MAC адрес клиента в атрибуты UserName и User-Password запроса access-request к Radius серверу. Так-как внешняя системе ничего не знает о данном клиенте, она присылает Access-Reject.
Клиент обращается на HTTP ресурс, ТД перехватывает его запрос и отправляем клиенту ссылку на гостевой портал, который был задан в настройках SSID (portal-profile). Клиент переходит на портал по полученной ссылке, содержащая в себе:
- switch_ur 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 - адрес сайта, на который клиент хотел попасть изначально, портал подменил адрес, так как клиент пытался подключиться к http://www.msftconnecttest.com
Пример ссылки
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 сервер, ТД снимает ACL на доступ и редиректит на redirect_url
После отключения от ТД и подключения к текущей или другой ТД (к тому же SSID), авторизация будет проходить по MAC адресу, но так как NAC система уже знает клиента на Access-Request запрос MAB авторизации вернется Access-Accept (так-как этот сценарий реализован в логике ТД "external portal" и срабатывает при подключении к SSID, если ТД не "помнит" клиента). Перенаправления пользователя на портал происходить не будет, до тех пор, пока MAC адрес клиента не будет удален из базы