t
В статье рассматривается настройка проксирования RADIUS-запросов от ТД через контроллер WLC в NAC-систему. ТД является устройством идентификации (NAS-клиент), RADIUS-запросы будут исходить от ТД. Контроллер WLC выполняет роль посредника в общении ТД и NAC-системы.

Диаграмма взаимодействия
ТД — самостоятельное устройство идентификации. Возможно несколько схем взаимодействия ТД и RADIUS-сервера:
В статье описана настройка контроллера для проксирования RADIUS-запросов при работе с внешним RADIUS-сервером, т. е. вторая схема.
Проксирование RADIUS-запросов позволяет использовать общее хранилище учетных данных пользователей Wi-Fi.
Для успешной авторизации на внешнем RADIUS-сервере необходимо:
|
Рекомендуется ознакомиться с базовой настройкой подключения ТД к контроллеру WLC, которая описана в разделе Настрoйка WLC руководства по эксплуатации.
Рассмотрим поэтапную работу при Enterprise-авторизации. Ниже на диаграмме представлен пример успешной авторизации пользователя с проксированием на внешний RADIUS-сервер.

Настроить перенаправление всех RADIUS-запросов от ТД из сети 192.168.1.0/24 на вышестоящий сервер:
Производить подмену NAS-IP на 10.10.20.1
Настройка будет выполнена на базе заводской конфигурации (Factory).
Шаги выполнения:
Настройка локального RADIUS-сервера.
Перейдите в конфигурационный режим:
wlc# configure wlc(config)# |
Перейдите в раздел radius-server local:
wlc(config)# radius-server local wlc(config-radius)# |
Пропишите NAS.
Добавьте подсети ТД (адресное пространство ТД, т. е. их IP-адреса), которые будут обслуживаться локальным RADIUS-сервером при Enterprise-авторизации пользователей Wi-Fi в nas ap:
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 |
При схеме подключения ТД через L3-сеть (с SoftGRE-туннелями) в конфигурации должна быть настроена запись для nas local, если она отсутствует, то её необходимо добавить:
|
Настройте virtual-server.
Настройте virtual-server для проксирования RADIUS-запросов на внешний сервер. Задайте имя virtual-server:
wlc(config-radius)# virtual-server default |
Задайте nas-ip.
В локальном RADIUS-сервере есть возможность изменять NAS-IP во всех входящих RADIUS-запросах от ТД к WLC. |
wlc(config-radius-vserver)# nas-ip-address 10.10.20.1 |
Включите режим проксирования.
wlc(config-radius-vserver)# mode proxy |
Включите привязку к upstream-pool
wlc(config-radius-vserver)# upstream-pool default |
Включите virtual-server.
wlc(config-radius-vserver)# enable wlc(config-radius-vserver)# exit |
Настройте upstream-server.
Настройте upstream-server доступна из раздела radius-server. Создайте upstream-server для настройки параметров вышестоящего сервера:
wlc(config-radius)# upstream-server eltex |
Задайте адрес вышестоящего сервера. На этот сервер будут перенаправляться запросы от ТД:
wlc(config-radius-upstream-server)# host 10.10.10.12 |
Включите режим проксирования для запросов аутентификации и аккаунтинга.
Server-type auth – проксирование только запросов аутентификации. Запросы будут проксироваться на порт, указанный в параметре port (по умолчанию – 1812). Server-type acct – проксирование только аккаунтинга. Проксирование осуществляется на порт, указанный в параметре port (по умолчанию – 1812). При необходимости порт может быть изменен (стандартный порт для аккаунтинга – 1813). Server-type all – проксирование запросов аутентификации и аккаунтинга. Запросы аутентификации будут проксироваться на порт, указанный в параметре port (по умолчанию – 1812), а аккаунтинг будет проксироваться на порт = 'port'+1 (то есть по умолчанию – 1813). |
Выберите режим all, так как нужно перенаправлять все запросы.
wlc(config-radius-upstream-server)# server-type all |
Задайте ключ для вышестоящего сервера.
wlc(config-radius-upstream-server)# key ascii-text password wlc(config-radius-upstream-server)# exit |
wlc(config-radius)# upstream-pool default |
Укажите необходимые upstream-pool для проксирования radius запросов.
wlc(config-radius-upstream-pool)# upstream-server eltex |
Включите режим проксирования для запросов аутентификации и аккаунтинга.
Server-type auth – проксирование только запросов аутентификации. Запросы будут проксироваться на порт, указанный в параметре port (по умолчанию – 1812). Server-type acct – проксирование только аккаунтинга. Проксирование осуществляется на порт, указанный в параметре port (по умолчанию – 1812). При необходимости порт может быть изменен (стандартный порт для аккаунтинга – 1813). Server-type all – проксирование запросов аутентификации и аккаунтинга. Запросы аутентификации будут проксироваться на порт, указанный в параметре port (по умолчанию – 1812), а аккаунтинг будет проксироваться на порт = 'port'+1 (то есть по умолчанию – 1813). |
Выберите режим all, так как нужно перенаправлять все запросы.
wlc(config-radius-upstream-pool)# server-type all |
Конфигурация раздела radius-server.
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
mode proxy
nas-ip-address 10.10.20.1
upstream-pool default
enable
exit
upstream-server eltex
host 10.10.10.12
server-type all
key ascii-text password
exit
upstream-pool default
server-type all
upstream-server eltex
exit
enable
exit |
Настройка в разделе WLC.
Перейдите в раздел wlc:
wlc(config)# wlc |
Настройте radius-profile.
Настройте профиль default-radius:
wlc(config-wlc)# radius-profile default-radius |
Поскольку настраивается проксирование запросов аутентификации и аккаунтинга, то в auth-address и acct-address должен быть указан адрес контроллера, который доступен для ТД. Ключ RADIUS-сервера (auth-password/acct-password) должен совпадать с ключом, указанным для nas ap, который был указан в radius-server local.
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 |
Если используется проксирование на SoftWLC, необходимо указать домен RADIUS. Этот домен должен совпадать с доменом, в котором созданы учетные записи пользователей Enterprise на SoftWLC.
|
Включите отправку аккаунтинга на RADIUS-сервер.
wlc(config-wlc-radius-profile)# acct-enable |
Включите добавление идентификатора RADIUS-сессии в запросах аккаунтинга.
wlc(config-wlc-radius-profile)# auth-acct-id-send |
Задайте временной интервал обновления аккаунтинга.
wlc(config-wlc-radius-profile)# acct-interval 600 |
Конфигурация radius-profile.
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:
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(config-wlc-ssid-profile)# vlan-id 3 |
Задать остальные параметры SSID.
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.
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.
ap-location default-location ssid-profile test_enterprise exit |
Конфигурация раздела wlc.
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 |
Перейдите в конфигурационный режим:
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 |
Примените и подтвердите конфигурацию.
wlc# commit wlc# confirm |
Для настройки внешнего RADIUS-сервера необходимо записать в таблицу NAS внешнего RADIUS-сервера адрес и ключ локального RADIUS-сервера WLС. |
Конфигурация устройства:
|
Настроить перенаправление всех RADIUS-запросов от ТД c разными ssid из сети 192.168.1.0/24 на необходимый radius сервер:
Производить подмену NAS-IP на 10.10.20.1
Настройка будет выполнена на базе заводской конфигурации (Factory).
Шаги выполнения:
Настройка локального RADIUS-сервера.
Перейдите в конфигурационный режим:
wlc# configure wlc(config)# |
Перейдите в раздел radius-server local:
wlc(config)# radius-server local wlc(config-radius)# |
Пропишите NAS.
Добавьте подсети ТД (адресное пространство ТД, т. е. их IP-адреса), которые будут обслуживаться локальным RADIUS-сервером при Enterprise-авторизации пользователей Wi-Fi в nas ap:
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 |
При схеме подключения ТД через L3-сеть (с SoftGRE-туннелями) в конфигурации должна быть настроена запись для nas local, если она отсутствует, то её необходимо добавить:
|
Настройте upstream-server для каждого из используемых radius серверов.
Настройте upstream-server доступна из раздела radius-server. Создайте upstream-server для настройки параметров вышестоящего сервера:
wlc(config-radius)# upstream-server eltex1 |
Задайте адрес вышестоящего сервера. На этот сервер будут перенаправляться запросы от ТД:
wlc(config-radius-upstream-server)# host 10.10.10.12 |
Включите режим проксирования для запросов аутентификации и аккаунтинга.
Server-type auth – проксирование только запросов аутентификации. Запросы будут проксироваться на порт, указанный в параметре port (по умолчанию – 1812). Server-type acct – проксирование только аккаунтинга. Проксирование осуществляется на порт, указанный в параметре port (по умолчанию – 1812). При необходимости порт может быть изменен (стандартный порт для аккаунтинга – 1813). Server-type all – проксирование запросов аутентификации и аккаунтинга. Запросы аутентификации будут проксироваться на порт, указанный в параметре port (по умолчанию – 1812), а аккаунтинг будет проксироваться на порт = 'port'+1 (то есть по умолчанию – 1813). |
Выберите режим all, так как нужно перенаправлять все запросы.
wlc(config-radius-upstream-server)# server-type all |
Задайте ключ для вышестоящего сервера.
wlc(config-radius-upstream-server)# key ascii-text password wlc(config-radius-upstream-server)# exit |
Настройте upstream-server для следующего radius сервера:
wlc(config-radius)# upstream-server eltex2 |
Задайте адрес вышестоящего сервера. На этот сервер будут перенаправляться запросы от ТД:
wlc(config-radius-upstream-server)# host 10.10.10.44 |
Включите режим проксирования для запросов аутентификации и аккаунтинга.
wlc(config-radius-upstream-server)# server-type all |
Задайте ключ для вышестоящего сервера.
wlc(config-radius-upstream-server)# key ascii-text password wlc(config-radius-upstream-server)# exit |
wlc(config-radius)# upstream-pool pool1 |
Укажите необходимые upstream-pool для проксирования radius запросов.
wlc(config-radius-upstream-pool)# upstream-server eltex1 |
Включите режим проксирования для запросов аутентификации и аккаунтинга.
Server-type auth – проксирование только запросов аутентификации. Запросы будут проксироваться на порт, указанный в параметре port (по умолчанию – 1812). Server-type acct – проксирование только аккаунтинга. Проксирование осуществляется на порт, указанный в параметре port (по умолчанию – 1812). При необходимости порт может быть изменен (стандартный порт для аккаунтинга – 1813). Server-type all – проксирование запросов аутентификации и аккаунтинга. Запросы аутентификации будут проксироваться на порт, указанный в параметре port (по умолчанию – 1812), а аккаунтинг будет проксироваться на порт = 'port'+1 (то есть по умолчанию – 1813). |
Выберите режим all, так как нужно перенаправлять все запросы.
wlc(config-radius-upstream-pool)# server-type all wlc(config-radius-upstream-pool)# exit |
wlc(config-radius)# upstream-pool pool2 |
Укажите необходимые upstream-pool для проксирования radius запросов.
wlc(config-radius-upstream-pool)# upstream-server eltex2 |
Включите режим проксирования для запросов аутентификации и аккаунтинга.
wlc(config-radius-upstream-pool)# server-type all |
Настройте virtual-server.
Настройте virtual-server для проксирования RADIUS-запросов на внешний сервер. Задайте имя virtual-server:
wlc(config-radius)# virtual-server default |
Настройте ssid-profile для которого будут применяться настройки проксирования radis запросов. Задайте имя ssid-profile:
wlc(config-radius-vserver)# ssid-profile ssid1 |
Задайте nas-ip.
В локальном RADIUS-сервере есть возможность изменять NAS-IP во всех входящих RADIUS-запросах от ТД к WLC. |
wlc(config-radius-vserver-ssid-profile)# nas-ip-address 10.10.20.1 |
Включите режим проксирования.
wlc(config-radius-vserver-ssid-profile# mode proxy |
Включите привязку к ранее созданному pstream-pool pool1
wlc(config-radius-vserver-ssid-profile)# upstream-pool pool1 wlc(config-radius-vserver-ssid-profile)# exit |
Настройте следующий ssid-profile для которого будут применяться настройки проксирования radis запросов. Задайте имя ssid-profile:
wlc(config-radius-vserver)# ssid-profile ssid2 |
wlc(config-radius-vserver-ssid-profile)# nas-ip-address 10.10.20.1 |
Включите режим проксирования.
wlc(config-radius-vserver-ssid-profile# mode proxy |
Включите привязку к ранее созданному pstream-pool pool2
wlc(config-radius-vserver-ssid-profile)# upstream-pool pool2 wlc(config-radius-vserver-ssid-profile)# exit |
Включите virtual-server.
wlc(config-radius-vserver)# enable wlc(config-radius-vserver)# exit |
wlc(config)# wlc |
wlc(config-wlc)# radius-profile radius1 |
Поскольку настраивается проксирование запросов аутентификации и аккаунтинга, то в auth-address и acct-address должен быть указан адрес контроллера, который доступен для ТД. Ключ RADIUS-сервера (auth-password/acct-password) должен совпадать с ключом, указанным для nas ap, который был указан в radius-server local.
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 |
Если используется проксирование на SoftWLC, необходимо указать домен RADIUS. Этот домен должен совпадать с доменом, в котором созданы учетные записи пользователей Enterprise на SoftWLC.
|
Включите отправку аккаунтинга на RADIUS-сервер.
wlc(config-wlc-radius-profile)# acct-enable |
Включите добавление идентификатора RADIUS-сессии в запросах аккаунтинга.
wlc(config-wlc-radius-profile)# auth-acct-id-send |
Задайте временной интервал обновления аккаунтинга.
wlc(config-wlc-radius-profile)# acct-interval 600 |
Конфигурация radius-profile.
radius-profile radius1 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:
wlc(config-wlc)# ssid-profile test_enterprise1 |
Укажите в ssid-profile ранее настроенный профиль radius-profile.
wlc(config-wlc-ssid-profile)# radius-profile radius1 |
Задайте имя SSID.
wlc(config-wlc-ssid-profile)# ssid "test_enterprise1" |
Задайте режим безопасности.
wlc(config-wlc-ssid-profile)# security-mode WPA2_1X |
Задайте VLAN.
wlc(config-wlc-ssid-profile)# vlan-id 3 |
Задать остальные параметры SSID.
wlc(config-wlc-ssid-profile)# description "SSID1 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.
ssid-profile test_enterprise1 description "SSID1 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.
ap-location default-location ssid-profile test_enterprise1 exit |
wlc(config-wlc)# radius-profile radius2 |
Поскольку настраивается проксирование запросов аутентификации и аккаунтинга, то в auth-address и acct-address должен быть указан адрес контроллера, который доступен для ТД. Ключ RADIUS-сервера (auth-password/acct-password) должен совпадать с ключом, указанным для nas ap, который был указан в radius-server local.
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 |
Если используется проксирование на SoftWLC, необходимо указать домен RADIUS. Этот домен должен совпадать с доменом, в котором созданы учетные записи пользователей Enterprise на SoftWLC.
|
Включите отправку аккаунтинга на RADIUS-сервер.
wlc(config-wlc-radius-profile)# acct-enable |
Включите добавление идентификатора RADIUS-сессии в запросах аккаунтинга.
wlc(config-wlc-radius-profile)# auth-acct-id-send |
Задайте временной интервал обновления аккаунтинга.
wlc(config-wlc-radius-profile)# acct-interval 600 |
Конфигурация radius-profile.
radius-profile radius2 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:
wlc(config-wlc)# ssid-profile test_enterprise2 |
Укажите в ssid-profile ранее настроенный профиль radius-profile.
wlc(config-wlc-ssid-profile)# radius-profile radius2 |
Задайте имя SSID.
wlc(config-wlc-ssid-profile)# ssid "test_enterprise2" |
Задайте режим безопасности.
wlc(config-wlc-ssid-profile)# security-mode WPA2_1X |
Задайте VLAN.
wlc(config-wlc-ssid-profile)# vlan-id 3 |
Задать остальные параметры SSID.
wlc(config-wlc-ssid-profile)# description "SSID2 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.
ssid-profile test_enterprise2 description "SSID1 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.
ap-location default-location ssid-profile test_enterprise2 exit |
Перейдите в конфигурационный режим:
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 |
Примените и подтвердите конфигурацию.
wlc# commit wlc# confirm |
Для настройки внешнего RADIUS-сервера необходимо записать в таблицу NAS внешнего RADIUS-сервера адрес и ключ локального RADIUS-сервера WLС. |
Конфигурация устройства:
|
Рассмотрим возможные проблемы при авторизации.
Рассмотрим один из вариантов запрета доступа, где причиной является отсутствие записи NAS-IP в конфигурации внешнего RADIUS-сервера.

В данном примере внешний RADIUS-сервер на входящий запрос (Access-Request), ответит (Access-Reject). Может быть две причины такого ответа.
При настройке проксирования RADIUS запросов на WLC указывается параметр подмены NAS-IP. В случае, если он не указан, запросы будут пересылаться на внешний RADIUS-сервер без подмены NAS-IP. В результате внешний RADIUS-сервер получит запрос с NAS-IP ТД. Если на внешнем RADIUS-сервере включена проверка по NAS-IP, запрос на подключение будет отклонён. Если подмена NAS-IP в конфигурации проксирования RADIUS на WLC настроена, но внешний RADIUS-сервер присылает ответ (Access-Reject), необходимо проверить наличие адреса WLC в NAS-клиентах в конфигурации внешнего RADIUS-сервера.

Данный пример описывает проблему ответа о запрете доступа (Access-Reject) на запрос (Access-Request).
Причиной такого ответа является отсутствие учетной записи клиента на внешнем RADIUS-сервере. В таком случае необходимо проверить наличие учетной записи клиента в конфигурации внешнего RADIUS-сервера и корректность введенных клиентом данных (логина и пароля).