Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление

Взаимодействие контроллера с порталом Cisco ISE

...

Настройка на ТД

Команды для настройки внешней портальной авторизации на ТД (ссылка на инструкцию: https://docs.eltex-co.ru/pages/viewpage.action?pageId=444825607#id-РуководствопоэксплуатацииWEP-30L,WEP-30L-Z-НастройкаVAPсвнешнейпортальнойавторизацией)

WEP-30L(root):/# configure
WEP-30L(config):/# interface
WEP-30L(config):/interface# wlan1-va0  
WEP-30L(config):/interface/wlan1-va0# vap

WEP-30L(config):/interface/wlan1-va0/vap# vlan-id X (где X — VLAN-ID на VAP)
WEP-30L(config):/interface/wlan1-va0/vap# ap-security 

WEP-30L(config):/interface/wlan1-va0/vap/ap-security# mode off (режим шифрования off — без пароля)
WEP-30L(config):/interface/wlan1-va0/vap/ap-security# exit

WEP-30L(config):/interface/wlan1-va0/vap# ssid 'Portal_WEP-30L' (изменение имени SSID)
WEP-30L(config):/interface/wlan1-va0/vap# captive-portal
WOP-30L(config):/interface/wlan1-va0/vap/captive-portal# verification-mode 'external-portal'
WEP-30L(config):/interface/wlan1-va0/vap/captive-portal# scenarios
WEP-30L(config):/interface/wlan1-va0/vap/captive-portal/scenarios# scenario-redirect
WEP-30L(config):/interface/wlan1-va0/vap/captive-portal/scenarios/scenario-redirect# redirect-url "https://X.X.X.X/<NAS_ID>/?switch_url=<SWITCH_URL>&ap_mac=<AP_MAC>&client_mac=<CLIENT_MAC>
&wlan=<SSID>&original-url=<ORIGINAL_URL>" (указать URL внешнего виртуального портала в соответствии с таблицей 1)
WEP-30L(config):/interface/wlan1-va0/vap/captive-portal/scenarios/scenario-redirect# exit
WEP-30L(config):/interface/wlan1-va0/vap/captive-portal/scenarios# exit
WEP-30L(config):/interface/wlan1-va0/vap/captive-portal# enabled true 
WEP-30L(config):/interface/wlan1-va0/vap/captive-portal# exit
WEP-30L(config):/interface/wlan1-va0/vap# radius
WEP-30L(config):/interface/wlan1-va0/vap/radius# auth-address X.X.X.X (где Х.Х.Х.Х — IP-адрес RADIUS-сервера, используемого для авторизации)
WEP-30L(config):/interface/wlan1-va0/vap/radius# auth-password secret (где secret — пароль для RADIUS-сервера, используемого для авторизации)
WEP-30L(config):/interface/wlan1-va0/vap# save (сохранение настроек)

Таблица 1 — Настройка URL шаблона для внешней портальной авторизации

...

Параметр

...

Описание

...

URL, который изначально запрашивал клиент

Блок кода
languagebash
titleЧасть конфигурации ТД, относящаяся к настройке портала
            radius:
               auth-port: 1812
               auth-address: 100.110.0.161
               auth-password: testing123
               auth-acct-id-send: true
               tls-enable: false
               acct-enable: true
               acct-port: 1813
               acct-address: 100.110.0.161
               acct-password: testing123
               acct-periodic: false
               acct-interval: 600
               acct-wait-ip: false
               domain: root
               nas-id:
            captive-portal:
               enabled: true
               verification-mode: external-portal
               age-timeout: 1
               default-white-list:
               scenarios:
                  scenario-redirect:
                     name: scenario-redirect
                     access-type: forbid
                     index: 1
                     redirect-url: https://100.110.0.161:8443/portal/PortalSetup.action?portal=f09aaac2-f101-45ed-832f-fda201ab7639?action_url=<SWITCH_URL>&redirect=<ORIGINAL_URL>&ap_mac=<AP_MAC>
                     virtual-portal-name: default
                     auth-scenario: scenario-access
                  scenario-access:
                     name: scenario-access
                     access-type: allow
                     index: 2
                     deauth-scenario: scenario-redirect

Взаимодействие ТД с порталом Cisco ISE

  1. При первом подключении клиента (ISE ничего о нем не знает, ТД также). ТД пытается пройти MAB авторизацию на NAC сервере, подставляя MAC адрес клиента в атрибуты User-Name и User-Password запроса access-request к Radius серверу. Так как ISE ничего не знает о данном клиенте, он присылает access-reject.
  2. После того как ТД получила access-reject она отправляет клиенту ссылку редиректа на гостевой портал ISE (который был в ТД прописан при настройки SSID) формата: 
    https://100.110.0.161:8443/portal/PortalSetup.action?portal=f09aaac2-f101-45ed-832f-fda201ab7639?action_url=http%3A%2F%2Fredirect%2Eloc%3A10081%2F&redirect=http%3A%2F%2Fconnectivitycheck%2Egstatic%2Ecom%2Fgenerate%5F204&ap_mac=68%3A13%3AE2%3AC2%3A19%3A70 
    при этом дополняя ACL, с доступом только до гостевого портала.
  3. После саморегистрации пользователя на гостевом портале и успешного логина через форму портала, по полученному логину и паролю, информация об устройстве как устройство MAB заносится в базу Endpoins, в которой содержится в том числе MAC клиента. А клиенту возвращается ссылка редиректа на proxy сервис ТД, содержащая в себе адрес сайта, на который клиент хотел попасть изначально, логин и пароль, под которым клиент успешно прошёл аутентификацию на гостевом портале. Ссылка вида: 
    http://redirect.loc:10081/?token=CYO1UK0IE1KI8BIWVNBJYR8WTNGAK1TP&buttonClicked=4&err_flag=0&err_msg=&info_flag=0&info_msg=&redirect_url=http%3A%2F%2Fconnectivitycheck.gstatic.com%2Fgenerate_204&username=Gena&password=Password414
  4. Когда клиент переходит по этой ссылке, ТД считывает из нее логин и пароль и подставляет в атрибуты User-Name и User-Password запроса access-request , radius успешно авторизует клиента и ТД снимает ACL на доступ клиента и редиректит на изначально запрашиваемый пользователем портал.
  5. После отключения от SSID и подключения заново или подключения к другой ТД (к тому же SSID), авторизация будет проходить по mac адресу (так как этот сценарий реализован в логике ТД "external portal" и срабатывает при подключении к SSID, если ТД не "помнит" клиента). И редиректа пользователя на портал происходить не будет, до тех пор, пока endpoint клиента не будет удален из базы, в ручную или автоматически (по какой-то настроенной логике).

...

Рис.1 Процесс авторизации нового клиента(по логину и паролю)

Image Removed

Рис.2 Процесс авторизации зарегистрированного клиента(MAB)

Блок кода
languagebash
titleПакеты Radius в процессе авторизации неизвестного клиента
No.	Time	Source	Destination	Protocol	Length	Info
1	0.000000	100.110.0.247	100.110.0.161	RADIUS	294	Access-Request id=4
2	0.018302	100.110.0.161	100.110.0.247	RADIUS	80	Access-Reject id=4
3	277.808342	100.110.0.247	100.110.0.161	RADIUS	288	Access-Request id=5
4	277.831738	100.110.0.161	100.110.0.247	RADIUS	171	Access-Accept id=5
5	277.834463	100.110.0.247	100.110.0.161	RADIUS	255	Accounting-Request id=6
6	277.837400	100.110.0.161	100.110.0.247	RADIUS	62	Accounting-Response id=6
Блок кода
languagebash
titleАтрибуты пакета Access-request. "Аутентификация по мак адресу"
RADIUS Protocol
    Code: Access-Request (1)
    Packet identifier: 0x4 (4)
    Length: 252
    Authenticator: 4e18021cd2dbd9341c031c1a1da93a39
    [The response to this request is in frame 2]
    Attribute Value Pairs
        AVP: t=User-Name(1) l=14 val=7898e81e6707
        AVP: t=User-Password(2) l=18 val=Encrypted
        AVP: t=Framed-IP-Address(8) l=6 val=0.0.0.0
        AVP: t=Framed-MTU(12) l=6 val=1500
        AVP: t=Connect-Info(77) l=23 val=CONNECT 0Mbps 802.11a
        AVP: t=Vendor-Specific(26) l=12 vnd=Eltex Enterprise, Ltd.(35265)
        AVP: t=Vendor-Specific(26) l=12 vnd=Eltex Enterprise, Ltd.(35265)
        AVP: t=Called-Station-Id(30) l=36 val=68-13-e2-c2-19-70:F.E.-ciscoPortal
        AVP: t=Calling-Station-Id(31) l=19 val=78-98-e8-1e-67-07
        AVP: t=NAS-Port(5) l=6 val=1
        AVP: t=Framed-MTU(12) l=6 val=1500
        AVP: t=NAS-Port-Type(61) l=6 val=Wireless-802.11(19)
        AVP: t=Acct-Session-Id(44) l=19 val=55DCB7FF-5C1BC61C
        AVP: t=NAS-IP-Address(4) l=6 val=100.110.0.247
        AVP: t=NAS-Identifier(32) l=19 val=68-13-E2-C2-19-70
        AVP: t=Service-Type(6) l=6 val=Call-Check(10)
        AVP: t=Message-Authenticator(80) l=18 val=30928a538a67ca2122338fdee7b8aefd
Блок кода
languagebash
titleАтрибуты пакета Access-request. "Аутентификация по логину-паролю"
RADIUS Protocol
    Code: Access-Request (1)
    Packet identifier: 0x5 (5)
    Length: 246
    Authenticator: 5a35575eaedd8bb898325efc8d3c4ea4
    [The response to this request is in frame 4]
    Attribute Value Pairs
        AVP: t=User-Name(1) l=8 val=tester
        AVP: t=User-Password(2) l=18 val=Encrypted
        AVP: t=Framed-IP-Address(8) l=6 val=100.110.1.11
        AVP: t=Framed-MTU(12) l=6 val=1500
        AVP: t=Connect-Info(77) l=23 val=CONNECT 0Mbps 802.11a
        AVP: t=Vendor-Specific(26) l=12 vnd=Eltex Enterprise, Ltd.(35265)
        AVP: t=Vendor-Specific(26) l=12 vnd=Eltex Enterprise, Ltd.(35265)
        AVP: t=Called-Station-Id(30) l=36 val=68-13-e2-c2-19-70:F.E.-ciscoPortal
        AVP: t=Calling-Station-Id(31) l=19 val=78-98-e8-1e-67-07
        AVP: t=NAS-Port(5) l=6 val=1
        AVP: t=Framed-MTU(12) l=6 val=1500
        AVP: t=NAS-Port-Type(61) l=6 val=Wireless-802.11(19)
        AVP: t=Acct-Session-Id(44) l=19 val=55DCB7FF-5C1BC61C
        AVP: t=NAS-IP-Address(4) l=6 val=100.110.0.247
        AVP: t=NAS-Identifier(32) l=19 val=68-13-E2-C2-19-70
        AVP: t=Service-Type(6) l=6 val=Login(1)
        AVP: t=Message-Authenticator(80) l=18 val=a646b2d8ff46c444a222236da8a7e800

Настройка Cisco ISE

1.Создаем Network Device Profile. В нашем случае Eltex
Image Removed 

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, включаем используемый ТД протокол обмена подтверждениями, в нашем случае отключаем это Via PAP/ASCII и отключаем Check Password, так как ТД при mac авторизации передает в виде логина mac клиента, а в виде пароля nopassword. А Cisco ISE ожидает в поле пароля так-же мак адрес.
Image Removed

3.Создаем новый профиль сетевых устройств, в нашем случае  "Eltex-AP".
Image Removed

4.Настраиваем взаимодействие с ТД по протоколу Radius. Можно указать подсеть ТД (в нашем случает это одна ТД и подсеть 100.110.0.247/32), в поле Device Profile выбираем ранее созданный профайл Eltex. Также необходимо указать secret key для протокола Radius, ранее настроенный на ТД.
Image Removed 

5.Создать группу встроенных гостевых учетных записей, в нашем случае это Eltex-AP_testUsers и в этой группе создать учетные записи, в нашем случае это Gena и tester, задать им логин и пароль.Image Removed

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 (учетные записи созданные пользователем самостоятельно на гостевом портале)
Image Removed

7.Создаем правило с разрешенными протоколами, в нашем случае MAB-WIFI_Eltex, в нем разрешаем Authentication Bypass>Process Host Lookup и Authentication Protocols>Allow PAP/ASCIIImage Removed

8.Настройка Authorization Profiles. На вкладке  Work Centers > Guest Access > Policy Elements > Results > Authorization Profiles > Add создаем профиль авторизации под ранее созданный Network Device Profile. В данный сценарий можно включать параметры авторизации клиента, такие как CVLAN, ACL, shaper и т.п. через добавления различных атрибутов (который поддерживают или будут поддерживать ТД Eltex)Image Removed

9.Настройка Policy Sets. На вкладке Work Centers > Guest Access > Policy Sets создаем политику доступа для WiFi пользователей. В нашем случае с названием Eltex-WIFI_Guest-Portal
В эту политику попадают клиенты приходящие с SSID "F.E.-ciscoPortal" и Flow Type Conditions соответствуют  Wireless_MAB или WLC_WEB_Authentication
Image Removed

10.Настраиваем в данной политике правила аутентификации и авторизации. 
В правиле аутентификации первым пунктам идет проверка пользователя по логину и паролю в базе Internal Users, вторым пунктам, если не сработал пункт один, проверяется mac адрес в базе EndPoints (MAB).
В правиле авторизации сначала проверяется пользователь по логину и паролю в базе Internal Users. Вторым пунктам, если не сработал пункт один, проверяется mac адрес в базе EndPoints (MAB). И в обоих случаях, в нашем случае при успешной проверке применяется действие PermitAccess, но можно применить созданное ранее Eltex-AP_guest (что является аналогичным, только добавляется еще один уровень абстракции) или более сложное в плане защищенности действие.
Image Removed

11.Настраиваем гостевой портал. В нашем случае настроено как на снимке (настройки довольно понятные и в основном касаются оформления страницы, запрашиваемых данных пользователя и пользовательских соглашений)
Image Removed

12.Адрес портала для настройки ссылки редиректа на ТД, можно получить по ссылке
Image Removed

Radius Logs

Radius live log, неизвестного клиента
Image Removed

Первая запись журнала, о том что клиент не смог пройти MAB аутентификацию, так как клиент еще прошел регистрацию на портале.Image Removed

Вторая запись. О том что клиент не прошел динамическую авторизацию. ТД в данный момент не поддерживает CoA и данный способ не настраивался и не использовался.
Image Removed

Третья запись. О том что гость аутентифицировался на портале (после регистрации)
Image Removed

Четвертая запись. О том что пользователь успешно аутентифицировался и авторизовался через Radius по логину и паролю
Image Removed

Radius live log зарегистрированного клиента, по MAB (повторное после отключения от ТД или отключение и подключение к другой ТД)
Image Removed

Запись о том, что клиент успешно прошел MAB аутентификацию и авторизацию через Radius (Cisco ISE занесла MAC клиента в базу EndPoints, при аутентификации пользователя на портале)
Image Removed

Следующая запись. Аккаунтинг пользователя
Image Removed 

Cisco ISE + AD + AP (EAP-TLS)

Настройка связки Cisco ISE + Microsoft AD + Microsoft CA

Настройка Windows server для выполнения ролей AD + CS, создание пользователя, создания шаблона сертификата, настройка групповой политики автоматической выдачи сертификатов пользователям AD, настройка суппликанта Windows, хорошо описано в документыции:  v1.31_Настройка взаимодействия SoftWLC с Microsoft Active Directory (AD) и Certificate Services (CS)

Добавление поддержки сертификатов ADCS в Cisco ISE

Требуется импортировать в Cisco ISE корневой сертификат AD-CA

Для этого в терминале Windows сервера экспортировать корневой сертификат AD-CA, командой:

Блок кода
languagebash
titleэкспорт корневого сертификата AD-CA
certutil -ca.cert ROOT-CA_test.loc.cer

1.Импортируем корневой сертификат в доверенные сертификаты Cisco ISE
Image Removed
Image Removed

2.Генерируем CSR и скачиваем себе на компьютер
Image Removed
Image Removed

3.Выпускаем подписанный промежуточный сертификат для Cisco ISE, загрузив CSR на сервер и выполнив терминале команду 

Блок кода
languagebash
titleВыпускаем подписанный промежуточный серитфикат
certreq.exe -submit -attrib "CertificateTemplate:SubCA" .\isetestMultiUse.pem

4.Скачиваем подписанный сертификат и добавляем его в Cisco ISE, выбираем сферы применения данного сертификата. В нашем случае выбрана только EAP-TLS авторизация, но можно применить данный сертификат, для учетной записи администратора, для гостевого портала, для Radius и pxGrid
Image Removed
Image Removed

Настройка Cisco ISE (EAP-TLS) для аутентификации и авторизации по сертификатам пользователей AD

1.Добавляем для Flow Type Conditions определение: Wireless 802.1x detected  по атрибуту Radius:NAS-Port-Type значению Wireless - IEEE 802.11 и атрибуту Radius:Service-Type значению Framed
Image Removed

2.Добавляем в разрешенные протоколы: Allow EAP-TLS
Image Removed

3.Добавляем политику аутентификации-авторизации, в нашем случае Eltex-WIFI_dotx_TLS
Image Removed

4.Настраиваем политику аутентификации, в нашем случае использовать Preloaded_Certificate_Profile и политику авторизации, в нашем случае если это EAP-TLS, то просто PermitAccess 
Image Removed

Radius Live Logs: авторизации клиента по EAP-TLS 

Image Removed

Cisco ISE + AD + AP → EAP-TEAP (EAP Chaining). Авторизация по машинном и пользовательскому сертификату AD

Так-же EAP-Chaining будет работать и в случае EAP-FAST, но это подразумевает использование Cisco AnyConnect, в качестве суппликанта.

Настройка AD для выдачи пользовательского и машинного сертификата

  1. Перейти в Certificate Authority > Certificate Templates > Manage
  2. Для машинного сертификата копировать 'Workstation Authentication' шаблон и задать ему имя ('machine auth' в этом примере)
  3. В настройках шаблона на вкладке Security,  разрешить Allow Read, Enroll and Autoenroll для 'Domain Computers'
  4. Для сертификата пользователя скопировать  'User' шаблон и изменить его имя ('user auth' в нашем примере)
  5. В настройках шаблона на вкладке Security, разрешить Allow Read, Enroll and Autoenroll для 'Domain Users'

Image Removed

Image Removed

Image Removed

Следующим шагом будет публикация вновь созданных шаблонов сертификатов, как показано ниже. Как только мы добавим сертификаты, они станут доступны для регистрации.
Image Removed

Image Removed

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

  1. Открываем Group Policy Management консоль
  2. Редактируем GPO ту, которую хотите изменить (в данном примере используется политика по умолчанию)
  3. Переходим User | Computer Configuration, Policies, Windows Settings, Security Settings, и Public Key Policies.
  4. Двойной клик по Certificate Services Client - Auto-Enrollment.
  5. Изменяем Configuration Model на Enabled.
  6. Выбираем оба метода 'Renew expired certificates' и 'Update certificates that use certificate templates'.
  7. Нажимаем "ОК", чтобы сохранить изменения. Рабочие станции применят объект групповой политики и загрузят сертификат при следующем обновлении групповой политики.

Image Removed

Image Removed

Как только все настройки будут выполнены,можно либо перезагрузить компьютер пользователя, либо принудительно обновить объект групповой политики, запустив gpupdate /force в командной строке, чтобы получить сертификаты. Можно просмотреть сертификаты в консоли MMC (certlm.msc). На скринах ниже представлены как пользовательский, так и машинный сертификаты.

Image Removed

Настройка Cisco ISE

В данном разделе описываются только настройки индивидуальные для авторизации EAP-TEAP, остальные настройки (привязка ТД, генерация и привязка сертификатов AD-CS) идентичны настройкам Гостевого портала и EAP-TLS 

Настраиваем 'Preloaded_Certificate_Profile'  Administration > Identity Management > External Identity Sources > Certificate Authentication Profile
Image Removed 

Для идентификации сертификатов ('Use Identity From'), необходимо выбрать  'Subject Alternative Name' в качестве 'Certificate Attribute' или переключиться на   'Any Subject or Alternative Name Attributes in the Certificate (for Active Directory Only)', иначе не будет работать авторизация по машинному сертификату. 

Image Removed

Так-как ISE по умолчанию идентифицирует сертификат по атрибуту Subject (Субъект). В машинном сертификате, в поле 'Субъект' отсутствуют значения, в отличие от пользовательского сертификата. 
Image Removed

Настраиваем 'Allowed Protocols' редактируя дефолтную политику 'Default Network Access' или создавая свою и редактируя ее. Необходимо включить 'Allow EAP-TLS' и EAP-TEAP выбрав пункты как на снимке ниже (обязательно включив 'Enable EAP Chaining')
Image Removed

Image Removed

Создаем политику аутентификации-авторизации в Policy Sets. В нашем случае политику 'Eltex-WIFI_dotx_TEAP', с фильтром по SSID (который вычитывается из Radius атрибута 'Called-Station-Id' и фильтра 'Smart Conditions')
Image Removed 

Image Removed

Фильтр 'Smart Conditions', который задавали ранее в 'Network Device Profiles' для 'Wireless 802.1x detected'
Image Removed

Создаем профайл 'Eltex-cert_Machine-Only' для авторизации только по машинному сертификату, когда пользователь залогинился под локальной учетной записью и для аутентификации доступен только машинный сертификат.

Image Removed

Правило настроенное в данном профайле подразумевает (при совпадении условий авторизации) передачу Radius пакета  'Access_Accept' и Radius атрибута 'Radius:Tunnel-Private-Group-ID' со значением 4000, для помещения пользователя в CVLAN 4000 (в терминологии Cisco динамический VLAN). Так-же можно в данном правиле навешивать ACL ( именной или динамический) через другие атрибуты Radius (пока ТД Eltex не поддерживают). И другие политики которые поддерживают контроллер или ТД.
Image Removed

...

  1. При первом подключении клиента ТД пытается пройти MAB-авторизацию на NAC-сервере, подставляя MAC-адрес клиента в атрибуты User-Name и User-Password запроса access-request к RADIUS-серверу WLC. Контроллер проксирует запрос на внешний RADIUS-сервер Cisco ISE. Так как ISE ничего не известно о данном клиенте, он присылает access-reject на WLC, тот, в свою очередь, на ТД.
  2. После того как ТД получила access-reject, она отправляет клиенту ссылку редиректа на гостевой портал 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
  3. После авторизации пользователя на гостевом портале клиенту возвращается ссылка редиректа на ТД, содержащая в себе адрес сайта, на который клиент хотел попасть изначально, логин и пароль, под которым клиент успешно прошёл аутентификацию на гостевом портале. Пример ссылки:
    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
  4. Когда клиент переходит по этой ссылке, ТД считывает из нее логин и пароль и подставляет в атрибуты User-Name и User-Password запроса access-request, RADIUS успешно авторизует клиента, и ТД снимает ACL на доступ клиента и перенаправляет на изначально запрашиваемый пользователем портал.
  5. После отключения от SSID и подключения заново или подключения к другой ТД (к тому же SSID), авторизация будет проходить по MAC-адресу (так как этот сценарий реализован в логике ТД «external portal» и срабатывает при подключении к SSID, если ТД не помнит клиента). Редирект пользователя на портал происходить не будет до тех пор, пока учетная запись клиента не будет удалена из базы, вручную или автоматически (по настроенной логике).

Пример страницы гостевого портала:

Image Added

Схема процесса авторизации нового клиента по логину и паролю:

draw.io Diagram
bordertrue
viewerToolbartrue
fitWindowfalse
diagramNamewlc.cisco-like
simpleViewerfalse
width600
diagramWidth1134
revision12

Настройка на WLC

В данном разделе описана настройка внешней портальной авторизации на WLC.

За основу необходимо взять заводскую конфигурацию Factory (подробнее в инструкции Quickstart):

Блок кода
languagepy
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

Предупреждение
titleРазличие конфигурации устройств

Физическая конфигурация интерфейсов устройств WLC-15, WLC-30 и WLC-3200 различается между собой. Попытка применения настроек для одной модели устройства на другую может вызвать ошибку инициализации интерфейсов.

Внесение дополнений в конфигурацию:

Ниже рассмотрен пример настройки RADIUS-сервера и проксирования RADIUS-запросов ТД на внешний RADIUS-сервер (подробнее в инструкции Настройка проксирования на внешний RADIUS):

Настройте локальный RADIUS-сервер:

Блок кода
languagepy
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-профиль:

Блок кода
languagepy
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):

Блок кода
languagepy
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 в профиле портала требуется указывать в двойных кавычках.

Параметр 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-профиль:

Блок кода
languagepy
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 

Cуммарные изменения в конфигурации WLC:

Блок кода
languagepy
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 
    upstream-server cisco-ise
      host 100.110.0.161
      server-type all
      key ascii-text password
    exit
    enable
  exit
  enable
exit

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

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-periodic
	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:

Image Added

2. Настройте созданный профиль Eltex. Укажите протокол взаимодействия — RADIUS:
Image Added

В параметрах укажите атрибуты 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.

Image Added

В Host Lookup (MAB) установите флаг на пункте Process Host Lookup, включите используемый ТД протокол обмена подтверждениями, отключите Check Password в разделах Via PAP/ASCII и Via EAP-MD5:

Image Added

Scroll Pagebreak

3. Создайте новое сетевое устройство, в примере ниже — Eltex-WLC:

Image Added

4. Настройте взаимодействие по протоколу RADIUS. Укажите адрес и подсеть контроллера WLC (в примере это один контроллер и подсеть 100.109.1.246/32), в поле Device Profile выберите ранее созданный профиль Eltex:

Image Added

Укажите secret key для протокола RADIUS, настроенный на контроллере WLC в разделе radius-server → virtual-server → upstream-server → key:

Image Added

5. Создайте группу встроенных гостевых учетных записей, в примере ниже это Eltex_AP_Users:

Image Added

В этой группе необходимо создать учетные записи, задать для каждой логин и пароль. Пример создания учетной записи:

Image Added

Image Added

Image Added

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 (учетные записи созданные пользователем самостоятельно на гостевом портале):

Image Added

Image Added

Scroll Pagebreak

7. Создайте правило с разрешенными протоколами, в примере это Allowed_Protocols. Установите необходимые разрешения в пунктах Authentication Bypass — Process Host Lookup и в Authentication Protocols — Allow PAP/ASCII.

Image Added

Image Added

8. Настройте Authorization Profiles. На вкладке Work Centers → Guest Access → Policy Elements → Results → Authorization Profiles → Add создайте профиль авторизации под ранее созданный Network Device Profile. В данный сценарий можно включать параметры авторизации клиента, такие как CVLAN, ACL, shaper и т. п. через добавление различных атрибутов, которые поддерживают ТД ELTEX:

Image Added

Image Added

9. Настройте Policy Sets. На вкладке Work Centers → Guest Access → Policy Sets создайте политику доступа для Wi-Fi пользователей. В примере ниже создана политика доступа с названием Policy Sets.
В эту политику попадают клиенты, приходящие с SSID default-ssid_cisco_ise, Flow Type Conditions соответствуют Wirelles_MAB или WLC_WEB_Authentication:

Image Added

Image Added

Image Added

10. В созданной политике настройте правила аутентификации и авторизации. 
В правиле аутентификации сначала идет проверка пользователя по логину и паролю в базе Internal Users. Далее, если не сработала проверка по логину и паролю, проверяется MAC-адрес в базе EndPoints (MAB).
В правиле авторизации сначала идет проверка пользователя по логину и паролю в базе Internal Users. Далее, если не сработала проверка по логину и паролю, проверяется MAC-адрес в базе EndPoints (MAB)
В примере при успешной проверке применяется действие PermitAccess.

Image Added

Image Added


11. Настройте гостевой портал. Ниже приведен пример настройки портала. 

Image Added

Image Added

Image Added

Image Added

Image Added

Image Added

Image Added

Image Added

Image Added

Image Added

Image Added

Image Added

Scroll Pagebreak

12. Адрес портала для настройки ссылки редиректа возможно получить по ссылке Portal test URL:

Image Added

Отладочная информация RADIUS

В разделе Operations → RADIUS → Live Logs находится запись журнала c отладочной информацией RADIUS.

Image Added

Image Added

Scroll Pagebreak

Запись о том, что гость аутентифицировался на портале (после регистрации).
Image Added

Запись о том, что пользователь успешно аутентифицировался и авторизовался через RADIUS по логину и паролю.

Image Added

Image Added

Запись о том, что клиент успешно прошел MAB-аутентификацию и авторизацию через RADIUS (Cisco ISE занесла MAC клиента в базу EndPoints при аутентификации пользователя на портале).

Image Added

Image Added

Scroll Pagebreak

Запись аккаунтинга пользователя:
Image Added 

...

Windows 10 / Конфигурация Supplicant-а

Image Removed

Image Removed

Image Removed

Image Removed

Переходим в 'Параметры' и выбираем выданный AD-CS сертификат. В разделе 'Проверка подлинности клиента' в качестве основного и дополнительного методов выбираем 'Microsoft: смарт-карта или иной сертификат' 

Image Removed

по очереди настраиваем их как на снимках ниже (выбирая сертификат выданный AD-CS)
Image Removed

Подтверждаем и закрываем настройки
Image Removed

Radius Live Logs

Авторизация по обоим сертификатам, машинному и пользовательскому (полный доступ). Пользователь вошел в систему под доменной учетной записью.
Image Removed

Image Removed

Image Removed

...