| Оглавление |
|---|
Описание
В статье будет рассмотрена рассматривается настройка проксирования RADIUS-запросов от ТД через контроллер через контроллер WLC в NAC-систему. ТД ТД является устройством идентификации . RADIUS запросы будут (NAS-клиент), RADIUS-запросы будут исходить от ТД. Беспроводной контроллер Контроллер WLC выполняет роль посредника в общении ТД и NAC-системы.
| draw.io Diagram | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Диаграмма взаимодействия
ТД — самостоятельное устройство идентификации на выбор предлагается две схемы . Возможно несколько схем взаимодействия ТД и RADIUS-серверомсервера:
- Взаимодействие ТД с внешним Авторизация на локальном RADIUS-сервером;
- Взаимодействие ТД с локальным RADIUS-сервером, настроенным на беспроводном контроллере WLC.
Если на ТД указан внешний RADIUS-сервер, беспроводной контроллер не участвует в данной схеме взаимодействия, выполняя роль обычного маршрутизатора, обеспечивающего связность. Существует другая схема реализации взаимодействия ТД с внешним RADIUS-сервером. На ТД, в качестве RADIUS-сервера, указывается локальный RADIUS-сервер на беспроводном контроллере WLC. В таком архитектурном решении локальный RADIUS-сервера не обслуживает запросы, а пересылает (проксирует) приходящие RADIUS-запросы от ТД на внешний сервер и доставляет ответы от внешнего сервера обратно к ТД.
В данной статье описана конфигурация проксирования беспроводного контроллера RADIUS-запросов для реализации схемы работы Enterprise-авторизации с внешним RADIUS-сервером.
Проксирование RADIUS запросов решает одну из главных проблем в Enterprise авторизации. Пользователи могут подключаться к Wi-Fi сети используя общее хранилище учетных данных. Для успешной авторизации, необходимо наличие учетных записей для пользователей и IP-адрес контроллера WLC, который высутпает в качествет обслуживаемого клиента на внешнем RADIUS-сервере. При проксировании предоставлена возиожность настроить подмену NAS-IP, который будет устанавливаться в пересылаемые RADIUS запросы от ТД. В таком случае на внешнем RADIUS-сервере нужно добавить один NAS-объект, которым являться WLC.
Перед началом рекомендуется ознакомиться с базовой настройкой подключения ТД к контроллеру WLC, которая описана в статье: Настрoйка WLC.
Логика работы Enterprise авторизации
Успешная авторизация клиента
Рассмотрим поэтапную работу при Enterprise авторизации. Ниже на диаграмме представлен пример успешной авторизации пользователя с проксированием на внешний RADIUS-сервер.
...
- сервере контроллера WLC:
Список пользователей Wi-Fi хранится в конфигурации контроллера. На контроллере запущен RADIUS-сервер, который выполняет проверку пользователей самостоятельно. Подробное описание представлено в статье Настройка локального RADIUS-сервера. - Авторизация на внешнем RADIUS-сервере:
Список пользователей хранится на внешнем сервере. На контроллере запущен RADIUS-сервер, который выполняет проксирование RADIUS-запросов на вышестоящий сервер.
В статье описана настройка контроллера для проксирования RADIUS-запросов при работе с внешним RADIUS-сервером, т. е. вторая схема.
Проксирование RADIUS-запросов позволяет использовать общее хранилище учетных данных пользователей Wi-Fi.
| Подсказка |
|---|
Для успешной авторизации на внешнем RADIUS-сервере необходимо:
|
Рекомендуется ознакомиться с базовой настройкой подключения ТД к контроллеру WLC, которая описана в разделе Настрoйка WLC руководства по эксплуатации.
Логика работы Enterprise-авторизации
Успешная авторизация клиента
Рассмотрим поэтапную работу при Enterprise-авторизации. Ниже на диаграмме представлен пример успешной авторизации пользователя с проксированием на внешний RADIUS-сервер.
| draw.io Diagram | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
- При подключении к SSID клиент вводит учетные данные в виде логина (username) и пароля (password), которые приходят на ТД.
- ТД отправляет запрос (Access-Request)
...
- на RADIUS-сервер WLC, в
...
- атрибуте NAS-IP
...
- будет задан IP-адрес ТД. На
...
- WLC настроено
...
- проксирование на внешний RADIUS-сервер.
- Получив от ТД запрос (Access-Request), WLC
...
- подменит NAS-IP на IP-адрес, который указан в конфигурации и отправит запрос на внешний RADIUS-сервер.
- Внешний RADIUS-сервер
...
- проверяет наличие записи NAS-IP WLC
...
- в
...
- своей конфигурации.
...
- Если запись найдена, происходит проверка учетной записи
...
- пользователя и в случае успешной проверки, внешний RADIUS-сервер отправляет ответ (Access-Accept) в
...
- сторону WLC.
- WLC,
...
- получив ответ от внешнего RADIUS-сервера, пересылает ответ ТД.
- После
...
- успешного подключения клиента
...
- ТД отправляет запрос (
...
- Accounting-Request) на WLC (если отправка включена в конфигурации).
...
- WLC подменяет NAS-
...
- IP и пересылает запрос на внешний RADIUS-сервер.
- Внешний RADIUS-сервер отправляет ответ (
...
- Accounting-Response) WLC. WLC пересылает запрос ТД.
Задача
Настроить Настроить перенаправление всех RADIUS запросов от -запросов от ТД из сети 192.168.1.0/24 на вышестоящий сервер:
- IP-адрессадрес: 10.10.10.12
- Порт для авторизации: 1812
- Пор Порт для аккаунтинга: 1813
- Ключ сервера: password
Производить подмену NAS-IP на 10.10.1020.1
Решение
Настройка локального будет выполнена на базе заводской конфигурации (Factory).
Шаги выполнения:
- Настроить локальный RADIUS-
...
Переходим в конфигурационный режим
| Блок кода | ||||
|---|---|---|---|---|
| ||||
wlc# configure
wlc(config)# radius-server local |
Переходим в раздел radius-server local:
| Блок кода | ||||
|---|---|---|---|---|
| ||||
wlc(config)# radius-server local |
...
- сервер:
- Прописать nas – разрешить прием RADIUS-пакетов от ТД;
- Настроить virtual-server – включить режим проксирования и настроить подмену NAS-IP;
- Настроить upstream-server – указать параметры вышестоящего сервера.
- Настройка в разделе WLC:
- Настроить radius-profile – настроить radius-profile, который будет использоваться для ТД;
- Настроить ssid-profile – настроить SSID и выбрать ранее созданный radius-profile;
- Включить ssid-profile в локацию.
- Настроить firewall.
- Применить конфигурацию.
Пример настройки
Настройка локального RADIUS-сервера.
Перейдите в конфигурационный режим:Блок кода language vb theme Eclipse wlc# configure wlc(config)#Перейдите в раздел radius-server local:
Блок кода language vb theme Eclipse wlc(config)# radius-server local wlc(config-radius)#Пропишите NAS.
Добавьте подсети ТД (адресное пространство ТД, т. е. их IP-адреса), которые будут обслуживаться локальным RADIUS-сервером при Enterprise-авторизации пользователей Wi-Fi в nas ap:Блок кода language vb theme Eclipse wlc(config-radius)# nas ap wlc(config-radius-nas)# network 192.168.1.0/24 wlc(config-radius-nas)# key ascii-text password wlc(config-radius-nas)# exitПодсказка icon false При схеме подключения ТД через L3-сеть (с SoftGRE-туннелями)
...
в конфигурации должна быть настроена запись
...
для nas local, если она отсутствует
...
, то её
...
необходимо добавить:
Блок кода language vb theme Eclipse wlc(config-radius)# nas local wlc(config-radius-nas)# key ascii-text password wlc(config-radius-nas)# network 127.0.0.1/32 wlc(config-radius-nas)# exit
...
Настройте virtual-server.
Настройте virtual-server для проксирования RADIUS-запросов на внешний сервер.
...
Задайте имя virtual-server:
Блок кода language vb theme Eclipse wlc(config-radius)# virtual-server default
...
Задайте nas-ip.
Подсказка icon false title Подмена NAS-IP В локальном RADIUS-сервере есть возможность
...
изменять NAS-
...
IP во всех входящих RADIUS-запросах от ТД к WLC.
Если параметр не задан, при пересылке RADIUS-запросов на внешний
...
сервер в
...
атрибуте NAS-IP будет записан адрес ТД. Это может повлечь за собой ошибки в процессе аутентификации, которые подробно рассмотрены в разделе Возможные проблемы при авторизации
...
Блок кода language vb theme Eclipse wlc(config-radius-vserver)# nas-ip-address 10.10.
...
20.1
...
Включите режим проксирования
...
.
Блок кода language vb theme Eclipse wlc(config-radius-vserver)# proxy-mode
...
Включите virtual-server.
Блок кода language vb theme Eclipse wlc(config-radius-vserver)# enable
...
Настройте upstream-server.
Настройте upstream-server доступна из раздела virtual-server. Создайте upstream-server для настройки параметров вышестоящего сервера:
Блок кода language vb theme Eclipse wlc(config-radius-vserver)# upstream-server eltex
...
Задайте адрес вышестоящего сервера
...
. На этот сервер будут перенаправляться запросы от ТД:
Блок кода language vb theme Eclipse wlc(config-radius-upstream-server)# host 10.10.10.12
...
Включите режим проксирования
...
для запросов аутентификации и аккаунтинга.
Подсказка icon false title Типы upstream серверов Server-type
...
auth – проксирование только запросов аутентификации. Запросы будут проксироваться на порт, указанный в параметре port (по умолчанию – 1812).
Server-type
...
acct – проксирование только аккаунтинга. Проксирование осуществляется на порт, указанный в параметре port (по
...
умолчанию – 1812). При необходимости
...
порт может быть изменен (стандартный порт для
...
аккаунтинга – 1813).
Server-type
...
all – проксирование запросов аутентификации и аккаунтинга. Запросы аутентификации будут проксироваться на порт, указанный в параметре port (по
...
умолчанию – 1812), а аккаунтинг будет проксироваться на порт = 'port'+1 (то есть по
...
умолчанию – 1813).
...
Выберите режим all, так как нужно перенаправлять все запросы
...
.
Блок кода language vb theme Eclipse wlc(config-radius-upstream-server)# server-type allЯкорь upstream-server.key upstream-server.key
...
Задайте ключ для вышестоящего сервера
...
.
Блок кода language vb theme
Eclipse wlc(config-radius-upstream-server)# key ascii-text password wlc(config-radius-upstream-server)# exit
...
wlc(config-radius-vserver)# exit
...
Конфигурация раздела radius-server.
Блок кода language vb theme Eclipse
...
WLC-1(config-radius-vserver)# enable
WLC-1(config-radius-vserver)# exitПолная конфигурация radius-server
...
| language | vb |
|---|---|
| theme | Eclipse |
...
radius-server local nas local key ascii-text encrypted 8CB5107EA7005AFF network 127.0.0.1/32 exit nas ap key ascii-text encrypted 8CB5107EA7005AFF network 192.168.1.0/24 exit virtual-server default proxy-mode nas-ip-address 10.10.
...
20.1 upstream-server eltex host 10.10.10.12 server-type all key ascii-text password exit enable exit exit
Scroll Pagebreak
Настройка в разделе WLC.
Перейдите в раздел wlc:Блок кода language vb theme Eclipse wlc(config)# wlc
...
Настройте radius-profile.
Настройте профиль default-radius
...
:
Блок кода language vb theme Eclipse wlc(config-wlc)# radius-profile default-radiusПоскольку
...
настраивается проксирование запросов аутентификации и аккаунтинга, то
...
в auth-address
...
и acct-address
...
должен быть указан адрес контроллера, который доступен для ТД.
...
Ключ RADIUS-сервера (auth-password/acct-password) должен совпадать с ключом, указанным для
...
nas ap, который
...
был указан в radius-server local
...
.
Якорь wlc.radius-profile wlc.radius-profile Блок кода language vb theme Eclipse wlc(config-wlc-radius-profile)# auth-address 192.168.1.1 wlc(config-wlc-radius-profile)# auth-password ascii-text password wlc(config-wlc-radius-profile)# acct-address 192.168.1.1 wlc(config-wlc-radius-profile)# acct-password ascii-text passwordПодсказка icon false Если
...
используется проксирование на SoftWLC,
...
необходимо указать домен RADIUS. Этот домен должен совпадать с доменом, в котором созданы учетные записи пользователей Enterprise на SoftWLC.
Блок кода language vb theme Eclipse wlc(config-wlc-radius-profile)# domain root
...
Включите отправку аккаунтинга на RADIUS-сервер
...
.
Блок кода language vb theme Eclipse wlc(config-wlc-radius-profile)# acct-enable
...
Включите добавление идентификатора RADIUS-сессии в запросах аккаунтинга
...
.
Блок кода language vb theme Eclipse wlc(config-wlc-radius-profile)# auth-acct-id-send
...
Задайте временной интервал обновления аккаунтинга
...
.
Блок кода language vb theme Eclipse wlc(config-wlc-radius-profile)# acct-interval 600Конфигурация radius-profile.
Блок кода language vb theme Eclipse 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 acct-interval 600 exitСоздайте ssid-profile.
Создайте новый профиль SSID:Блок кода language vb theme Eclipse wlc(config-wlc)# ssid-profile test_enterpriseУкажите в ssid-profile ранее настроенный профиль radius-profile.
Блок кода language vb theme Eclipse wlc(config-wlc-ssid-profile)# radius-profile default-radiusЗадайте имя SSID.
Блок кода language vb theme Eclipse wlc(config-wlc-ssid-profile)# ssid "test_enterprise"Задайте режим безопасности.
Блок кода language vb theme Eclipse wlc(config-wlc-ssid-profile)# security-mode WPA2_1XЗадайте VLAN.
Блок кода language vb theme Eclipse wlc(config-wlc-ssid-profile)# vlan-id 3Задать остальные параметры SSID.
Блок кода language vb theme Eclipse wlc(config-wlc-ssid-profile)# description "SSID for enterprise users" wlc(config-wlc-ssid-profile)# 802.11kv wlc(config-wlc-ssid-profile)# band 2g wlc(config-wlc-ssid-profile)# band 5g wlc(config-wlc-ssid-profile)# enable wlc(config-wlc-ssid-profile)# exitКонфигурация ssid-profile.
Блок кода language vb theme Eclipse ssid-profile test_enterprise description "SSID for enterprise users" ssid "test_enterprise" radius-profile default-radius vlan-id 3 security-mode WPA2_1X 802.11kv band 2g band 5g enable exitВключить ssid-profile в локацию.
Включите созданный SSID в локацию. ТД получит конфигурацию и начнёт вещать данные SSID. В примере ниже ssid-profile включен в локацию default-location.Блок кода language vb theme Eclipse ap-location default-location ssid-profile test_enterprise exitКонфигурация раздела wlc.
Блок кода language vb theme Eclipse 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 ssid-profile test_enterprise 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 ssid-profile test_enterprise description "SSID for enterprise users" ssid "test_enterprise" 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 auth-acct-id-send acct-enable acct-address 192.168.1.1 acct-password ascii-text encrypted 8CB5107EA7005AFF acct-periodic 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
- Настройка firewall.
Для приёма аккаунтинга разрешите прохождение UDP-трафика по порту 1813 из зоны trusted в зону self. В заводской конфигурации порт 1813 закрыт.Перейдите в конфигурационный режим:
Блок кода language vb theme Eclipse wlc# configure wlc(config)#Создайте группу radius_acct:
Блок кода object-group service radius_acct port-range 1813 exitДобавьте правило в zone-pair trusted self:
Блок кода security zone-pair trusted self rule 91 action permit match protocol udp match destination-port object-group radius_acct enable exit exit
Примените и подтвердите конфигурацию.
Блок кода language vb theme Eclipse wlc# commit wlc# confirm
| Подсказка |
|---|
Для настройки внешнего RADIUS-сервера необходимо записать в таблицу NAS внешнего RADIUS-сервера адрес и ключ локального RADIUS-сервера WLС. |
| Scroll Pagebreak |
|---|
Полная конфигурация
Конфигурация устройства:
| Раскрыть | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Создаем ssid-profile:
| Блок кода | ||||
|---|---|---|---|---|
| ||||
wlc(config-wlc)# ssid-profile test_enterprise |
Указываем в ssid-profile ранее настроенный профиль radius-profile:
| Блок кода | ||||
|---|---|---|---|---|
| ||||
wlc(config-wlc-ssid-profile)# radius-profile default-radius |
Задаем имя SSID:
| Блок кода | ||||
|---|---|---|---|---|
| ||||
wlc(config-wlc-ssid-profile)# ssid "test_enterprise" |
Задаем режим безопасности:
| Блок кода | ||||
|---|---|---|---|---|
| ||||
wlc(config-wlc-ssid-profile)# security-mode WPA2_1X |
Задаем VLAN:
| Блок кода | ||||
|---|---|---|---|---|
| ||||
WLC-1(config-wlc-ssid-profile)# vlan-id 3 |
Задаем остальные параметры SSID:
| Блок кода | ||||
|---|---|---|---|---|
| ||||
WLC-1(config-wlc)# ssid-profile test_enterprise
WLC-1(config-wlc-ssid-profile)# description "SSID for enterprise users"
WLC-1(config-wlc-ssid-profile)# 802.11kv
WLC-1(config-wlc-ssid-profile)# band 2g
WLC-1(config-wlc-ssid-profile)# band 5g
WLC-1(config-wlc-ssid-profile)# enable
WLC-1(config-wlc-ssid-profile)# exit |
Конфигурация ssid-profile:
| Блок кода | |||||
|---|---|---|---|---|---|
| |||||
ssid-profile test_enterprise
description "SSID for enterprise users"
ssid "test_enterprise"
|
Применяем конфигурацию и подтверждаем.
| Блок кода | ||||
|---|---|---|---|---|
| ||||
| Раскрыть | ||||
wlc#
|
| Подсказка |
|---|
Для настройки внешнего RADIUS-сервера необходимо записать в таблицу NAS внешнего RADIUS-сервера адрес и ключ локального RADIUS-сервера WLС. |
| Scroll Pagebreak |
|---|
Конфигурация:
|
| Якорь | ||||
|---|---|---|---|---|
|
| Scroll Pagebreak |
|---|
Возможные проблемы
Рассмотрим возможные проблемы при авторизации.
Запрет доступа по причине неправильного NAS-IP
Рассмотрим один из вариантов запрета доступа, где причиной является отсутствие записи о NAS-IP в конфигурации внешнего RADIUS-сервера.
| draw.io Diagram | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
|
...
|
...
|
...
|
В данном примере внешний RADIUS-сервер на входящий запрос (Access-Request), ответ ответит (Access-Reject). Может быть две причины такого ответа.
При настройке проксирования RADIUS запросов на WLC указывается параметр подмены NAS-IP, в . В случае, если он не указан, запросы будут пересылаться на внешний RADIUS-сервер без подмены NAS-IP. В результате внешний RADIUS-сервер получит запрос с NAS-IP ТД. В таком случае Если на внешнем RADIUS-сервере необходимо добавлять подсеть ТД в NAS клиенты сервера. Если подмены включена проверка по NAS-IP, запрос на подключение будет отклонён. Если подмена NAS-IP в конфигурации проксирования RADIUS на WLC настроена, но внешний RADIUS-сервер присылает ответ ответ (Access-Reject), необходим необходимо проверить наличие подсети или адреса WLC в NAS-клиентах в конфигурации внешнего RADIUS-сервера.
| Scroll Pagebreak |
|---|
Запрет доступа по причине ошибки аутентификации
| draw.io Diagram | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
|
...
|
...
|
Данный пример описывает проблему ответа о запрете доступа (Access-Reject) , на запрос (Access-Request).
Причиной такого ответа является отсутствие учетной записи в базе данных внешнего клиента на внешнем RADIUS-сервера, под которыми авторизуется клиентсервере. В таком случае необходимо проверить наличие учетной записи клиента в базе данных конфигурации внешнего RADIUS-сервера , а также корректность вводимых данных клиента, так как может быть допущена опечаткаи корректность введенных клиентом данных (логина и пароля).