Оглавление
Взаимодействие контроллера с порталом Cisco ISE
- При первом подключении клиента ТД пытается пройти MAB-авторизацию на NAC-сервере, подставляя MAC-адрес клиента в атрибуты User-Name и User-Password запроса access-request к Radius к RADIUS-серверу WLC. Контроллер проксирует запрос на внешний Radius RADIUS-сервер Cisco ISE. Так как ISE ничего не знает известно о данном клиенте, он присылает access-reject на WLC, тот, в свою очередь, на ТД.
- После того как ТД получила access-reject, она отправляет клиенту ссылку редиректа на гостевой портал ISE форматаISE-формата, при этом дополняя ACL с доступом только до гостевого портала. Пример ссылки:
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=slavalogin&password=Password - Когда клиент переходит по этой ссылке, ТД считывает из нее логин и пароль и подставляет в атрибуты User-Name и User-Password запроса access-request , radius атрибуты User-Name и User-Password запроса access-request, RADIUS успешно авторизует клиента, и ТД снимает ACL на доступ клиента и редиректит перенаправляет на изначально запрашиваемый пользователем портал.
- После отключения от SSID и подключения заново или подключения к другой ТД (к тому же SSID), авторизация будет проходить по mac MAC-адресу (так как этот сценарий реализован в логике ТД "external portal" «external portal» и срабатывает при подключении к SSID, если ТД не " помнит " клиента). И редиректа Редирект пользователя на портал происходить не будет , до тех пор, пока endpoint учетная запись клиента не будет удален удалена из базы, в ручную вручную или автоматически (по какой-то настроенной логике).
Пример страницы гостевого портала:
Схема процесса авторизации нового клиента по логину и паролю:
| draw.io Diagram | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
|
Настройка на WLC
Конфигурации контроллера для настройки В данном разделе описана настройка внешней портальной авторизации (ссылка на инструкцию Контроллеры беспроводного доступа)
За основу возьмем контроллер с преднастроенным factory-config (ссылка на инструкцию Quickstart):
на WLC.
За основу необходимо взять заводскую конфигурацию Factory (подробнее в инструкции Quickstart):
пример factory-config| Блок кода | ||
|---|---|---|
| ||
object-group service ssh
port-range 22
exit
object-group service dhcp_server
port-range 67
exit
object-group service dhcp_client
port-range 68
exit
object-group service ntp
port-range 123
exit
object-group service dns
port-range 53
exit
object-group service netconf
port-range 830
exit
object-group service radius_auth
port-range 1812
exit
object-group service sa
port-range 8043-8044
exit
object-group service airtune
port-range 8099
exit
object-group service web
port-range 443
exit
syslog max-files 3
syslog file-size 512
syslog file tmpsys:syslog/default
severity info
exit
radius-server local
nas ap
key ascii-text encrypted 8CB5107EA7005AFF
network 192.168.1.0/24
exit
nas local
key ascii-text encrypted 8CB5107EA7005AFF
network 127.0.0.1/32
exit
domain default
exit
virtual-server default
enable
exit
enable
exit
radius-server host 127.0.0.1
key ascii-text encrypted 8CB5107EA7005AFF
exit
aaa radius-profile default_radius
radius-server host 127.0.0.1
exit
boot host auto-config
boot host auto-update
vlan 3
force-up
exit
vlan 2
exit
no spanning-tree
domain lookup enable
security zone trusted
exit
security zone untrusted
exit
security zone users
exit
bridge 1
vlan 1
security-zone trusted
ip address 192.168.1.1/24
no spanning-tree
enable
exit
bridge 2
vlan 2
security-zone untrusted
ip address dhcp
no spanning-tree
enable
exit
bridge 3
vlan 3
mtu 1458
security-zone users
ip address 192.168.2.1/24
no spanning-tree
enable
exit
interface gigabitethernet 1/0/1
mode switchport
switchport access vlan 2
exit
interface gigabitethernet 1/0/2
mode switchport
exit
interface gigabitethernet 1/0/3
mode switchport
exit
interface gigabitethernet 1/0/4
mode switchport
exit
interface tengigabitethernet 1/0/1
mode switchport
switchport access vlan 2
exit
interface tengigabitethernet 1/0/2
mode switchport
exit
tunnel softgre 1
mode data
local address 192.168.1.1
default-profile
enable
exit
security zone-pair trusted untrusted
rule 1
action permit
enable
exit
exit
security zone-pair trusted trusted
rule 1
action permit
enable
exit
exit
security zone-pair trusted self
rule 10
action permit
match protocol tcp
match destination-port object-group ssh
enable
exit
rule 20
action permit
match protocol icmp
enable
exit
rule 30
action permit
match protocol udp
match source-port object-group dhcp_client
match destination-port object-group dhcp_server
enable
exit
rule 40
action permit
match protocol udp
match destination-port object-group ntp
enable
exit
rule 50
action permit
match protocol tcp
match destination-port object-group dns
enable
exit
rule 60
action permit
match protocol udp
match destination-port object-group dns
enable
exit
rule 70
action permit
match protocol tcp
match destination-port object-group netconf
enable
exit
rule 80
action permit
match protocol tcp
match destination-port object-group sa
enable
exit
rule 90
action permit
match protocol udp
match destination-port object-group radius_auth
enable
exit
rule 100
action permit
match protocol gre
enable
exit
rule 110
action permit
match protocol tcp
match destination-port object-group airtune
enable
exit
rule 120
action permit
match protocol tcp
match destination-port object-group web
enable
exit
exit
security zone-pair untrusted self
rule 1
action permit
match protocol udp
match source-port object-group dhcp_server
match destination-port object-group dhcp_client
enable
exit
exit
security zone-pair users self
rule 10
action permit
match protocol icmp
enable
exit
rule 20
action permit
match protocol udp
match source-port object-group dhcp_client
match destination-port object-group dhcp_server
enable
exit
rule 30
action permit
match protocol tcp
match destination-port object-group dns
enable
exit
rule 40
action permit
match protocol udp
match destination-port object-group dns
enable
exit
exit
security zone-pair users untrusted
rule 1
action permit
enable
exit
exit
security passwords default-expired
nat source
ruleset factory
to zone untrusted
rule 10
description "replace 'source ip' by outgoing interface ip address"
action source-nat interface
enable
exit
exit
exit
ip dhcp-server
ip dhcp-server pool ap-pool
network 192.168.1.0/24
address-range 192.168.1.2-192.168.1.254
default-router 192.168.1.1
dns-server 192.168.1.1
option 42 ip-address 192.168.1.1
vendor-specific
suboption 12 ascii-text "192.168.1.1"
suboption 15 ascii-text "https://192.168.1.1:8043"
exit
exit
ip dhcp-server pool users-pool
network 192.168.2.0/24
address-range 192.168.2.2-192.168.2.254
default-router 192.168.2.1
dns-server 192.168.2.1
exit
softgre-controller
nas-ip-address 127.0.0.1
data-tunnel configuration wlc
aaa radius-profile default_radius
keepalive-disable
service-vlan add 3
enable
exit
wlc
outside-address 192.168.1.1
service-activator
aps join auto
exit
airtune
enable
exit
ap-location default-location
description "default-location"
mode tunnel
ap-profile default-ap
airtune-profile default_airtune
ssid-profile default-ssid
exit
airtune-profile default_airtune
description "default_airtune"
exit
ssid-profile default-ssid
description "default-ssid"
ssid "default-ssid"
radius-profile default-radius
vlan-id 3
security-mode WPA2_1X
802.11kv
band 2g
band 5g
enable
exit
radio-2g-profile default_2g
description "default_2g"
exit
radio-5g-profile default_5g
description "default_5g"
exit
ap-profile default-ap
description "default-ap"
password ascii-text encrypted 8CB5107EA7005AFF
exit
radius-profile default-radius
description "default-radius"
auth-address 192.168.1.1
auth-password ascii-text encrypted 8CB5107EA7005AFF
domain default
exit
wids-profile default-wids
description "default-wids"
exit
ip-pool default-ip-pool
description "default-ip-pool"
ap-location default-location
exit
enable
exit
wlc-journal all
limit days 365
exit
ip ssh server
ip tftp client timeout 45
ntp enable
ntp broadcast-client enable
ip https server
|
Если на контроллере отсутствует конфигурация либо она была изменена, то требуется привести к factory виду. Чтобы не заполнять конфигурацию построчно, её возможно применить с помощью ввода команд:
| title | применение factory-config с помощью консольных команд CLI |
|---|
| Блок кода | ||
|---|---|---|
| ||
wlc-15# copy system:factory-config system:candidate-config
wlc-15# copy system:factory-config system:candidate-config
|******************************************| 100% (12035B) Configuration loaded successfully.
wlc-15# commit
Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds.
wlc-15# confirm
Configuration has been confirmed. Commit timer canceled.
|
| Предупреждение | ||
|---|---|---|
| ||
Физическая конфигурация интерфейсов устройств WLC-15, WLC-30 и WLC-3200 различается между собой. Попытка применения настроек для одной модели устройства на другую может вызвать ошибку инициализации интерфейсов. |
Внесение дополнений в конфигурацию:
Ниже рассмотрен пример настройки RADIUS-сервера и проксирования RADIUS-запросов ТД на внешний RADIUS-сервер (подробнее в инструкции
| Предупреждение | ||
|---|---|---|
| ||
Физическая конфигурация интерфейсов устройств серии WLC-15, WLC-30 и WLC-3200 различается между собой. Попытка применения конфигурации одной серии устройств на другой серии может вызвать ошибку инициализации интерфейсов. |
Внесём дополнения в конфигурацию:
Инструкция по настройке Radius сервера и проксирования RADIUS запросов ТД на внешний RADIUS-сервер (ссылка на инструкцию Настройка проксирования на внешний RADIUS):
Настроим Настройте локальный Radius RADIUS-сервер:
| Блок кода | ||
|---|---|---|
| ||
| ||
radius-server local nas apradius-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 domain default user name1 passwordkey ascii-text password1password exitnetwork 192.168.1.0/24 exit virtual-servernas defaultlocal proxy-modekey ascii-text password nas-ip-address 100.109.1.246network 127.0.0.1/32 exit upstream-server cisco-ise host 100.110.0.161virtual-server default server-type allproxy-mode nas-ip-address key ascii-text password exit enable exit enable exit |
Настроим локальный Radius профиль:
| Блок кода | ||
|---|---|---|
| ||
radius-server100.109.1.246 <-- WLC UPLINK IP BRIDGE 2 upstream-server cisco-ise host 100.110.0.161 key ascii-text password exit radius-server host 127.0.0.1 server-type all key ascii-text password exit aaa radius-profile default_radius radius-server host 127.0.0.1 exit aaa radius-profile radius_profile_cisco_ise radius-serverenable host 100.110.0.161 exit radius-server host 127.0.0.1enable exit |
Настроим сервер и профиль COA для создания SoftGRE тоннелей c ТДНастройте локальный RADIUS-профиль:
| Блок кода | ||
|---|---|---|
| ||
dasradius-server COAhost 127.0.0.1 key ascii-text password port 1700 exit aaa dasradius-profile COAdefault_radius dasradius-server COA 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
|
| Примечание |
|---|
Строку WORD(4-255) Custom redirection URL в команде Значение параметра redirect-url-custom в профиле портала требуется указывать в двойных кавычках. |
Параметр wlc>portal-profile>redirect-url-custom содержит URL портала и атрибуты, указанные после символа "?". Между собой атрибуты разделяются символом "&".
Таблица 1 — Настройка Атрибуты URL-шаблона для внешней портальной авторизации
Параметр | Описание |
|---|---|
| <NAS_ID> |
| Идентификатор ТД. Когда параметр не задан, то в качестве NAS ID в RADIUS- |
| пакетах и строке редиректа будет использоваться MAC-адрес ТД. NAS ID возможно задать в конфигурации wlc → radius-profile <name> → nas-id. В данном примере NAS ID не задается. |
| <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 | ||
| Раскрыть | title | суммарные
Cуммарные изменения в конфигурации WLC:
| Блок кода | ||
|---|---|---|
| ||
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
domain default
user name1
password ascii-text password1
exit
exit
virtual-server cisco_isedefault proxy-mode nas-ip-address 100.109.1.246 upstream-server cisco-ise host 100.110.0.161 server-type allkey ascii-text password
exit
enable
exit
enable
exit
radius-server host 100.110.0.161
key ascii-text password
exit
radius-server host 127.0.0.1
key ascii-text password
exit
aaa radius-profile default_radius
radius-server host 100.110.0.161
exit enable exit enable exit radius-server host 127.0.0.1exit
das-server COA
key ascii-text password
port 1700
exit
aaa dasradius-profileCOA default_radiusdas radius-serverCOA exit ip route 0 host 127.0.0.0/0 100.109.0. 1 exit wlc outside-address 192.168.1.1 service-activator aps join auto exit airtune enable exit ap-location default-location mode tunnel ap-profile default-ap airtune-profile default_airtune ssid-profile default-ssid exit airtune-profile default_airtune description "default_airtune" exit ssid-profile default-ssid ssid "default-ssid_cisco_ise" radius-profile default-radius portal-enable portal-profile default-portal vlan-id 3 security-mode WPA2_1X 802.11kv band 2g band 5g enable exit radio-2g-profile default_2g description "default_2g" exit radio-5g-profile default_5g description "default_5g" exit ap-profile default-ap password ascii-text password exit
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-periodicperiodic domain default exit ip-pool default-ip-pool description "default-ip-pool" ap-location default-location exit enable exit |
Настройка Cisco ISE
1. Создаем В Cisco ISE cоздайте Network Device Profile . — Eltex с помощью кнопки Add:
2. Настраиваем Настройте созданный профайл "профиль Eltex". Указываем Укажите протокол взаимодействия — RADIUS:
В параметрах укажите атрибуты RADIUS, - 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 установите флаг на пункте Process Host Lookup, включаем включите используемый ТД протокол обмена подтверждениями, в нашем случае отключаем это отключите Check Password в разделах Via PAP/ASCII и отключаем Check Password. Via EAP-MD5:
| Scroll Pagebreak |
|---|
3. Создайте новое сетевое устройство, в примере ниже — Eltex-WLC:
3.Создаем новый профиль сетевых устройств, в нашем случае "Eltex-AP"
4. Настраиваем Настройте взаимодействие с ТД по протоколу Radius. Требуется указать протоколу RADIUS. Укажите адрес и подсеть контроллера WLC (в нашем случает примере это один контроллер и подсеть 100.110109.01.247246/32), в поле Device Profile выбираем выберите ранее созданный профайл Eltex. Также необходимо указать профиль Eltex:
Укажите secret key для протокола RadiusRADIUS, ранее настроенный на контроллере .WLC в разделе radius-server → virtual-server → upstream-server → key:
5. Создать Создайте группу встроенных гостевых учетных записей, в нашем случае примере ниже это Eltex-_AP_testUsers Users:
В и в этой группе необходимо создать учетные записи, в нашем случае это Gena и tester, задать им задать для каждой логин и пароль. Пример создания учетной записи:
6. Настраиваем Настройте последовательность действий для гостевого портала (Guest Portal Sequence). Переходим Перейдите в настройки Work Centers > → Guest Access > → Identities > Identity → Identity Source Sequence > → Guest Portal Sequence - это — это предустановленная последовательность аутентификации гостевых пользователей. И в поле Authentication Search List выбираем В поле Authentication Search List выберите порядок аутентификации пользователей. В нашем случае порядок как на снимке нижепримере ниже установлен следующий порядок: Internal Endpoints (MAB) → Internal Users (встроенные учетные записи) → Guest Users (учетные записи созданные пользователем самостоятельно на гостевом портале)
:
| Scroll Pagebreak |
|---|
7. Создаем Создайте правило с разрешенными протоколами, в нашем случае MAB-WIFI_Eltex, в нем разрешаем Authentication Bypass>Process примере это Allowed_Protocols. Установите необходимые разрешения в пунктах Authentication Bypass — Process Host Lookup и в Authentication Protocols>Allow Protocols — Allow PAP/ASCIIASCII.
8. Настройка Настройте Authorization Profiles. На вкладке Work Work Centers > → Guest Access > → Policy Elements > → Results > → Authorization Profiles > → Add создаем создайте профиль авторизации под ранее созданный Network созданный Network Device Profile. В данный сценарий можно включать параметры авторизации клиента, такие как CVLAN, ACL, shaper и т. п. через добавления добавление различных атрибутов (который поддерживают или будут поддерживать ТД Eltex), которые поддерживают ТД ELTEX:
9. Настройка Настройте Policy Sets. На вкладке вкладке Work Centers > → Guest Access > → Policy Sets создаем создайте политику доступа для WiFi Wi-Fi пользователей. В нашем случае с названием Eltex-WIFI_Guest-Portalпримере ниже создана политика доступа с названием Policy Sets.
В эту политику попадают клиенты приходящие с SSID "F.E.-ciscoPortal" и Flow , приходящие с SSID default-ssid_cisco_ise, Flow Type Conditions соответствуют Wireless Wirelles_MAB или WLC_WEB_Authentication:
10. Настраиваем в данной В созданной политике настройте правила аутентификации и авторизации.
В правиле аутентификации первым пунктам сначала идет проверка пользователя по логину и паролю в базе Internal Users, вторым пунктам, если не сработал пункт один, проверяется mac Internal Users. Далее, если не сработала проверка по логину и паролю, проверяется MAC-адрес в базе EndPoints (MAB).
В правиле авторизации сначала проверяется пользователь идет проверка пользователя по логину и паролю в базе Internal Users. Вторым пунктамДалее, если не сработал пункт одинсработала проверка по логину и паролю, проверяется mac MAC-адрес в базе EndPoints (MAB). И в обоих случаях, в нашем случае
В примере при успешной проверке применяется действие PermitAccess, но можно применить созданное ранее Eltex-AP_guest (что является аналогичным, только добавляется еще один уровень абстракции) или более сложное в плане защищенности действие.
.
11. Настраиваем Настройте гостевой портал. В нашем случае настроено как на снимке (настройки в основном касаются оформления страницы, запрашиваемых данных пользователя и пользовательских соглашений)
Ниже приведен пример настройки портала.
| Scroll Pagebreak |
|---|
12. Адрес портала для настройки ссылки редиректа на ТД, можно получить по ссылке
возможно получить по ссылке Portal test URL:
Отладочная информация RADIUS
В разделе Operations → RADIUS → Live Logs находится запись журнала c отладочной информацией RADIUS.
| Scroll Pagebreak |
|---|
Запись о том,
Radius Logs
Запись журнала, о том что клиент не смог пройти MAB аутентификацию, так как клиент прошел регистрацию на портале.
Вторая запись. О том что клиент не прошел динамическую авторизацию. ТД в данный момент не поддерживает CoA и данный способ не настраивался и не использовался.
Третья запись. О том что гость аутентифицировался на портале (после регистрации).
Запись о том, Четвертая запись. О том что пользователь успешно аутентифицировался и авторизовался через Radius RADIUS по логину и паролю.
Запись о том, что клиент успешно прошел MAB-аутентификацию и авторизацию через Radius RADIUS (Cisco ISE занесла MAC клиента в базу EndPoints , при аутентификации пользователя на портале)
.
| Scroll Pagebreak |
|---|
Запись аккаунтинга пользователя:
Следующая запись. Аккаунтинг пользователя



























































