Взаимодействие контроллера с порталом Cisco ISE
- При первом подключении клиента ТД пытается пройти MAB авторизацию на NAC сервере, подставляя MAC адрес клиента в атрибуты User-Name и User-Password запроса access-request к Radius серверу WLC. Контроллер проксирует запрос на внешний Radius сервер Cisco ISE. Так как ISE ничего не знает о данном клиенте, он присылает access-reject на WLC, тот в свою очередь на ТД.
- После того как ТД получила access-reject она отправляет клиенту ссылку редиректа на гостевой портал ISE формата:
https://100.110.0.161:8443/portal/PortalSetup.action?portal=10968c1f-36fe-4e5c-96ff-9d74f689b29b/?action_url=http%3A%2F%2Fredirect%2Eloc%3A10081%2F&ap_mac=68%3A13%3AE2%3A0E%3A85%3A50&client_mac=a2%3A13%3A66%3A1b%3Ac7%3A8e&redirect=http%3A%2F%2Fconnectivitycheck%2Egstatic%2Ecom%2Fgenerate%5F204
при этом дополняя ACL, с доступом только до гостевого портала. - После саморегистрации пользователя на гостевом портале и успешного логина через форму портала, по полученному логину и паролю, информация об устройстве как устройство MAB заносится в базу Endpoins, в которой содержится в том числе MAC клиента. А клиенту возвращается ссылка редиректа на proxy сервис ТД, содержащая в себе адрес сайта, на который клиент хотел попасть изначально, логин и пароль, под которым клиент успешно прошёл аутентификацию на гостевом портале. Ссылка вида:
http://redirect.loc:10081/?token=NAI4PU5HK6O007V0KMYS37M800GOZW97&buttonClicked=4&err_flag=0&err_msg=&info_flag=0&info_msg=&redirect_url=http%3A%2F%2Fconnectivitycheck.gstatic.com%2Fgenerate_204&username=login&password=Password - Когда клиент переходит по этой ссылке, ТД считывает из нее логин и пароль и подставляет в атрибуты User-Name и User-Password запроса access-request , radius успешно авторизует клиента и ТД снимает ACL на доступ клиента и редиректит на изначально запрашиваемый пользователем портал.
- После отключения от SSID и подключения заново или подключения к другой ТД (к тому же SSID), авторизация будет проходить по mac адресу (так как этот сценарий реализован в логике ТД "external portal" и срабатывает при подключении к SSID, если ТД не "помнит" клиента). И редиректа пользователя на портал происходить не будет, до тех пор, пока endpoint клиента не будет удален из базы, в ручную или автоматически (по какой-то настроенной логике).
Рис.1 Процесс авторизации нового клиента(по логину и паролю)
Настройка на WLC
Конфигурации контроллера для настройки внешней портальной авторизации
За основу возьмем контроллер с преднастроенным factory-config (ссылка на инструкцию Quickstart):
Если на контроллере отсутствует конфигурация либо она была изменена, то требуется привести к factory виду. Чтобы не заполнять конфигурацию построчно, её возможно применить с помощью ввода команд:Различие конфигурации устройств
Физическая конфигурация интерфейсов устройств серии WLC-15, WLC-30 и WLC-3200 различается между собой. Попытка применения конфигурации одной серии устройств на другой серии может вызвать ошибку инициализации интерфейсов.
Внесём дополнения в конфигурацию:
Инструкция по настройке Radius сервера и проксирования RADIUS запросов ТД на внешний RADIUS-сервер (ссылка на инструкцию Настройка проксирования на внешний RADIUS):
Настроим локальный Radius сервер:
radius-server local
nas ap
key ascii-text password
network 192.168.1.0/24
exit
nas local
key ascii-text password
network 127.0.0.1/32
exit
virtual-server default
proxy-mode
nas-ip-address 100.109.1.246 <-- WLC UPLINK IP BRIDGE 2
upstream-server cisco-ise
host 100.110.0.161
server-type all
key ascii-text password
exit
enable
exit
enable
exit
Настроим локальный Radius профиль:
radius-server host 127.0.0.1 key ascii-text password exit aaa radius-profile default_radius radius-server host 127.0.0.1 exit
Настроим конфигурацию портальной авторизации (ссылка на инструкцию Авторизация через RADIUS):
wlc
portal-profile default-portal
redirect-url-custom "https://100.110.0.161:8443/portal/PortalSetup.action?portal=10968c1f-36fe-4e5c-96ff-9d74f689b29b?action_url=<SWITCH_URL>&redirect=<ORIGINAL_URL>&ap_mac=<AP_MAC>"
age-timeout 10
verification-mode external-portal
exit
radius-profile default-radius
auth-address 192.168.1.1
auth-password ascii-text password
auth-acct-id-send
acct-enable
acct-address 192.168.1.1
acct-password ascii-text password
acct-periodic
exit
exit
Значение параметра redirect-url-custom в профиле портала требуется указывать в двойных кавычках.
Таблица 1 — Настройка URL шаблона для внешней портальной авторизации (параметр redirect-url-custom)
Параметр | Описание |
|---|---|
| <NAS_ID> | NAS ID - сервер, через который происходит выход клиента в интернет. Если не задан ни один из этих параметров, то в качестве NAS ID в RADIUS- и HTTP(S)-пакетах будет использоваться MAC-адрес ТД |
| <SWITCH_URL> | Доменное имя, которое получает клент при перенаправлении |
| <AP_MAC> | MAC-адрес точки доступа |
| <CLIENT_MAC> | MAC-адрес клиента |
| <SSID> | SSID |
| <ORIGINAL_URL> | URL, который изначально запрашивал клиент |
Настроим SSID профиль:
wlc
ssid-profile default-ssid
ssid "default-ssid_cisco_ise"
radius-profile default-radius
portal-enable
portal-profile default-portal
vlan-id 3
802.11kv
band 2g
band 5g
enable
exit
exit
Настройка Cisco ISE
1.Создаем Network Device Profile.
2.Настраиваем созданный профиль "Eltex". Указываем протокол взаимодействия - Radius. В параметрах указываем атрибуты радиус по которым ISE будет определять типы Authentication/Authorization. Для этого настраиваем Flow Type Conditions:
Wireless MAB detected
Wireless Web Authentication detected
Для всех Wireless подключений атрибут идентификации Radius:NAS-Port-Type будет одинаков Wireless - IEEE 802.11.
Wireless MAB detected добавляем еще один атрибут Radius:Service-Type со значением Call Check.
Wireless Web Authentication detected добавляем еще один атрибут Radius:Service-Type со значением Login.
В "Host Lookup (MAB)" включаем Process Host Lookup, включаем используемый ТД протокол обмена подтверждениями, отключаем Check Password в разделе Via PAP/ASCII и Via EAP-MD5.
3.Создаем новое сетевое устройство, в нашем случае "Eltex-AP"
4.Настраиваем взаимодействие с ТД по протоколу Radius. Требуется указать подсеть контроллера WLC (в нашем случае это один контроллер и подсеть 100.109.1.246/32), в поле Device Profile выбираем ранее созданный профиль Eltex. Также необходимо указать secret key для протокола Radius, настроенный на контроллере WLC в разделе radius-profile default-radius.
5.Создать группу встроенных гостевых учетных записей, в нашем случае это Eltex_AP_Users и в этой группе создать учетные записи, задать им логин и пароль.
6.Настраиваем последовательность действий для гостевого портала (Guest Portal Sequence). Переходим в настройки Work Centers > Guest Access > Identities > Identity Source Sequence > Guest Portal Sequence - это предустановленная последовательность аутентификации гостевых пользователей. И в поле Authentication Search List выбираем порядок аутентификации пользователей. В нашем случае порядок как на снимке ниже: Internal Endpoints (MAB) → Internal Users (встроенные учетные записи) → Guest Users (учетные записи созданные пользователем самостоятельно на гостевом портале)
7.Создаем правило с разрешенными протоколами, в нашем случае Allowed_Protocols, в нем разрешаем Authentication Bypass>Process Host Lookup и Authentication Protocols>Allow PAP/ASCII
8.Настройка Authorization Profiles. На вкладке Work Centers > Guest Access > Policy Elements > Results > Authorization Profiles > Add создаем профиль авторизации под ранее созданный Network Device Profile. В данный сценарий можно включать параметры авторизации клиента, такие как CVLAN, ACL, shaper и т.п. через добавление различных атрибутов, которые поддерживают ТД Eltex
9.Настройка Policy Sets. На вкладке Work Centers > Guest Access > Policy Sets создаем политику доступа для WiFi пользователей. В нашем случае с названием Policy Sets
В эту политику попадают клиенты приходящие с SSID "default-ssid_cisco_ise" и Flow Type Conditions соответствуют Wireless_MAB или WLC_WEB_Authentication
10.Настраиваем в данной политике правила аутентификации и авторизации.
В правиле аутентификации первым пунктам идет проверка пользователя по логину и паролю в базе Internal Users, вторым пунктам, если не сработал пункт один, проверяется mac адрес в базе EndPoints (MAB).
В правиле авторизации сначала проверяется пользователь по логину и паролю в базе Internal Users. Вторым пунктам, если не сработал пункт один, проверяется mac адрес в базе EndPoints (MAB). И в обоих случаях, в нашем случае при успешной проверке применяется действие PermitAccess, но можно применить созданное ранее Eltex-AP_guest (что является аналогичным, только добавляется еще один уровень абстракции) или более сложное в плане защищенности действие.
11. Настройка гостевого портала. На снимках ниже приведен пример настройки портала.
12.Адрес портала для настройки ссылки редиректа, возможно получить по ссылке
Radius Logs
Запись журнала, о том что клиент не смог пройти MAB аутентификацию, так как клиент прошел регистрацию на портале.
Запись о том что гость аутентифицировался на портале (после регистрации)
Запись о том что пользователь успешно аутентифицировался и авторизовался через Radius по логину и паролю
Запись о том, что клиент успешно прошел MAB аутентификацию и авторизацию через Radius (Cisco ISE занесла MAC клиента в базу EndPoints, при аутентификации пользователя на портале)
Аккаунтинг пользователя







































