...
Шаг | Описание | Команда | Ключи |
---|---|---|---|
1 | Добавить RADIUS-сервер в список используемых серверов и перейти в режим его конфигурирования. | esr(config)# radius-server host esr(config-radius-server)# | <IP-ADDR> – IP-адрес RADIUS-сервера, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <IPV6-ADDR> – IPv6-адрес RADIUS-сервера, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF]; <VRF> – имя экземпляра VRF, задается строкой до 31 символа. |
2 | Задать пароль для аутентификации на удаленном RADIUS-сервере. | esr(config-radius-server)# key ascii-text | <TEXT> – строка [8..16] ASCII-символов; <ENCRYPTED-TEXT> – зашифрованный пароль, размером [8..16] байт, задаётся строкой [16..32] символов. |
3 | Создать профиль ААА. | esr(config)# aaa radius-profile <NAME> | <NAME> – имя профиля сервера, задается строкой до 31 символа. |
4 | В профиле AAA указать RADIUS-сервер. | esr(config-aaa-radius-profile)# radius-server host | <IP-ADDR> – IP-адрес RADIUS-сервера, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]; <IPV6-ADDR> – IPv6-адрес RADIUS-сервера, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF]. |
5 | Создать DAS-сервер. | esr(config)# das-server <NAME> | <NAME> – имя DAS-сервера, задается строкой до 31 символа. |
6 | Задать пароль для аутентификации на удаленном DAS-сервере. | esr(config-das-server)# key ascii-text | <TEXT> – строка [8..16] ASCII-символов; <ENCRYPTED-TEXT>–зашифрованный TEXT> – зашифрованный пароль, размером [8..16] байт, задаётся строкой [16..32] символов. |
7 | Создать AAA DAS-профиль. | esr(config)# aaa das-profile <NAME> | <NAME> – имя DAS-профиля, задается строкой до 31 символа. |
8 | Указать DAS-сервер в DAS-профиле. | esr(config-aaa-das-profile)# das-server <NAME> | <NAME> – имя DAS-сервера, задается строкой до 31 символа. |
9 | Сконфигурировать BRAS. | esr(config)# subscriber-control [ vrf <VRF> ] | <VRF> – имя экземпляра VRF, задается строкой до 31 символа, в рамках которого будет работать контроль пользователей. |
10 | Выбрать профиль серверов динамической авторизации (DAS), на которые будут приходить CoA-запросы от PCRF. | esr(config-subscriber-control)# aaa das-profile <NAME> | <NAME> – имя профиля серверов динамической авторизации (DAS), задается строкой до 31 символа. |
11 | Выбрать профиль RADIUS-серверов для получения параметров сервисов пользователя. | esr(config-subscriber-control)# aaa services-radius-profile | <NAME> – имя профиля RADIUS-серверов, задается строкой до 31 символа. |
12 | Выбрать профиль RADIUS-серверов для получения параметров сессии пользователя. | esr(config-subscriber-control)# aaa sessions-radius-profile | <NAME> – имя профиля RADIUS-серверов, задается строкой до 31 символа. |
13 | Определить IP-адрес маршрутизатора, который будет использоваться в качестве IP-адреса источника в отправляемых RADIUS-пакетах. | esr(config-subscriber-control)# nas-ip-address <ADDR> | <ADDR> – IP-адрес источника, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. |
14 | Включить аутентификацию сессий по MAC-адресу (не обязательно). | esr(config-subscriber-control)# session mac-authentication | |
15 | Организовать прозрачное пропускание служебного трафика (DHCP, DNS и т. д.) на основе фильтров. | esr(config-subscriber-control)# bypass-traffic-a с l <NAME> | <NAME> – имя привязываемого ACL, задается строкой до 31 символа. |
16 | Перейти в режим конфигурирования сервиса по умолчанию. | esr(config-subscriber-control)# default-service | |
17 | Привязать указанный QoS-класс к сервису по умолчанию. | esr(config-subscriber-default-service)# class-map <NAME> | <NAME> – имя привязываемого класса, задается строкой до 31 символа. |
18 | Указать имя списка URL, который будет использоваться для фильтрации HTTP/HTTPS-трафика не аутентифицированных пользователей. | esr(config-subscriber-default-service)# filter-name | <LOCAL-NAME> – имя профиля URL, задаётся строкой до 31 символа; <REMOTE-NAME> – имя списка URL на удаленном сервере, задаётся строкой до 31 символа. |
19 | Указать действия, которые должны быть применены для HTTP/HTTPS-пакетов, URL которых входит в список URL, назначенных командой «filter-name». | esr(config-subscriber-default-service)# filter-action<ACT> | <ACT> – назначаемое действие:
redirect <URL> – будет выполнен редирект на указанный URL, задается строкой до 255 символов. |
20 | Указать действия, которые должны быть применены для HTTP/HTTPS-пакетов, URL которых не входит в список URL, назначенных командой «filter-name». | esr(config-subscriber-default-service)# default -action<ACT> | <ACT> – назначаемое действие:
redirect <URL> – будет выполнен редирект на указанный URL, задается строкой до 255 символов. |
21 | Активировать профиль контроля пользователей. | esr(config-subscriber-control)# enable | |
22 | Изменить идентификатор сетевого интерфейса (физического, саб-интерфейса или сетевого моста) (не обязательно). | esr(config-if)# location <ID> | <ID> – идентификатор сетевого интерфейса, задаётся строкой до 220 символов. |
23 | Включить контроль пользователей на интерфейсе. | esr(config-if-gi)# service-subscriber-control | <NAME> – имя профиля IP-адресов, задаётся строкой до 31 символа. |
24 | Включить перезапрос значения квоты при ее истечении для сервисов пользователя с настроенным ограничением по объему трафика или времени (не обязательно). | esr(config-subscriber-control)# quota-expired-reauth | |
25 | Включить аутентификацию сессий по IP-адресу (не обязательно). | esr(config-subscriber-control)# session ip-authentication | |
26 | Включить прозрачное пропускание трафика в состоянии backup для BRAS (не обязательно). | esr(config-subscriber-control)# backup traffic-processing | |
27 | Задать интервал, по истечении которого с устройства будут удалены неиспользуемые в текущий момент списки URL (не обязательно). | esr(config)# subscriber-control unused-filters-remove-delay | <DELAY> – временной интервал в секундах, принимает значения [10800..86400]. |
28 | Задать интервал, по истечении которого, если не было пакетов от пользователя, сессия считается устаревшей и удаляется с устройства (не обязательно). | esr(config-subscriber-default-service)# session-timeout | <SEC> – период времени в секундах, принимает значения [120..3600]. |
29 | Определить VRRP-группу, на основе которой определяется состояние сервиса контроля абонентов (основной/резервный) (не обязательно). | esr(config-subscriber-control)# vrrp-group <GRID> | <GRID> – идентификатор группы VRRP-маршрутизатора, принимает значения [1..32]. |
30 | Определить, с каких TCP-портов назначения трафик будет перенаправлен на HTTP Proxy-сервер маршрутизатора (не обязательно). | esr(config-subscriber-control)# ip proxy http listen-ports <NAME> | <NAME> – имя профиля TCP/UDP-портов, задаётся строкой до 31 символа. |
31 | Определить порт HTTP Proxy-сервера на маршрутизаторе (не обязательно). | esr(config-subscriber-control)# ip proxy http redirect-port <PORT> | <PORT> – номер порта, указывается в диапазоне [1..65535]. |
32 | Определить, с каких TCP-портов назначения трафик будет перенаправлен на HTTPS Proxy-сервер маршрутизатора (не обязательно). | esr(config-subscriber-control)# ip proxy https listen-ports <NAME> | <NAME> – имя профиля TCP/UDP-портов, задаётся строкой до 31 символа. |
33 | Определить порт HTTPS Proxy-сервера на маршрутизаторе (не обязательно). | esr(config-subscriber-control)# ip proxy https redirect-port <PORT> | <PORT> – номер порта, указывается в диапазоне [1..65535]. |
34 | Определить IP-адрес маршрутизатора, который будет использоваться в качестве IP-адреса источника в отправляемых Proxy-сервером HTTP/HTTPS-пакетах (не обязательно). | esr(config-subscriber-control)# ip proxy source-address <ADDR> | <ADDR> – IP-адрес источника, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. |
35 | Задать URL-адрес сервера, предоставляющего списки приложений для фильтрации трафика (не обязательно). | esr(config)# subscriber-control apps-server-url <URL> | <URL> – адрес ссылки, задаётся строкой от 8 до 255 символов. |
36 | Включить контроль приложений на интерфейсе (не обязательно). | esr(config-if-gi)# subscriber-control application-filter <NAME> | <NAME> – имя профиля приложений, задаётся строкой до 31 символа. |
37 | Установить/сбросить верхнюю границу количества сессий BRAS (не обязательно). | esr(config-subscriber-control)# thresholds sessions-number high <Threshold> | <Threshold> – количество сессий BRAS:
|
38 | Установить/сбросить нижнюю границу количества сессий BRAS (не обязательно). | esr(config-subscriber-control)# thresholds sessions-number low <Threshold> | <Threshold> – количество сессий BRAS:
|
Пример настройки с SoftWLC
...
Блок кода |
---|
esr# configure esr(config)# security zone trusted esr(config-zone)# exit esr(config)# security zone untrusted esr(config-zone)# exit esr(config)# security zone dmz esr(config-zone)# exit |
Scroll Pagebreak |
---|
Сконфигурируем Сконфигурируем параметры публичного порта и сразу пропишем шлюз по умолчанию:
...
Сконфигурируем порт для подключения Wi-Fi точки доступа.:
Блок кода |
---|
esr(config)# bridge 2 esr(config-bridge)# security-zone trusted esr(config-bridge)# ip address 192.168.0.254/24 esr(config-bridge)# ip helper-address 192.0.2.20 esr(config-bridge)# service-subscriber-control object-group users esr(config-bridge)# location ssid1 esr(config-bridge)# enable esr(config-bridge)# exit esr(config)# interface gigabitethernet 1/0/2.2000 esr(config-subif)# bridge-group 1 esr(config-subif)# exit esr(config)# interface gigabitethernet 1/0/2 esr(config-if-gi)# service-policy dynamic downstream esr (config-if-gi)# exit |
...
Примечание |
---|
Подключать клиентов необходимо через саб-интерфейсы в бриджи, причем от параметра location (смотри см. конфигурацию bridge 2) зависит выбор тарифного плана. |
...
Блок кода |
---|
esr(config)# radius-server host 192.0.2.20 esr(config-radius-server)# key ascii-text password esr(config-radius-server)# auth-port 31812 esr (config-radius-server)# acct-port 31813 esr (config-radius-server)# exit |
Scroll Pagebreak |
---|
Создадим профиль AAA:
Блок кода |
---|
esr(config)# aaa radius-profile RADIUS esr(config-aaa-radius-profile)# radius-server host 192.0.2.20 esr(config-aaa-radius-profile)# exit |
...
Блок кода |
---|
esr(config)# ip access-list extended WELCOME esr(config-acl)# rule 10 esr(config-acl-rule)# action permit esr(config-acl-rule)# match protocol any esr(config-acl-rule)# match source-address any esr(config-acl-rule)# match destination-address any esr(config-acl-rule)# enable esr(config-acl-rule)# exit esr(config-acl)# exit esr (config)# ip access-list extended INTERNET esr(config-acl)# rule 10 esr(config-acl-rule)# action permit esr(config-acl-rule)# match protocol any esr(config-acl-rule)# match source-address any esr(config-acl-rule)# match destination-address any esr(config-acl-rule)# enable esr(config-acl-rule)# exit esr(config-acl)# exit |
Зададим web-ресурсы, доступные без авторизации:
...
Сконфигурируем и включим BRAS, в качестве NAS IP указываем укажем адрес интерфейса на стыке с SoftWLC, в данном примере – это IP-адрес интерфейса gigabitethernet 1/0/24:
...
Подсеть с клиентами 10.10.0.0/16, подсеть для работы с FreeRADIUS-сервером 192.168.1.1/24.
Решение:
Шаг 1:
Настройка RADIUS-сервера.
Для FreeRADIUS-сервера нужно задать подсеть, из которой могут приходить запросы и добавить список пользователей. Для этого в файл users в директории с файлами конфигурации FreeRADIUS-сервера нужно добавить:
Профиль пользователя:
...
Блок кода |
---|
<SERVICE_NAME> Cleartext-Password := <MACADDR> |
# Соответствует #Соответствует имени class-map в настройках ESR
Блок кода |
---|
Cisco-AVPair = "subscriber:traffic-class=<CLASS_MAP>", |
# Действие#Действие, которое применяет ESR к трафику (permit, deny, redirect)
...
Блок кода |
---|
esr(config-acl-rule)# enable esr(config-acl-rule)# exit esr(config-acl)# rule 30 esr(config-acl-rule)# action permit esr(config-acl-rule)# match protocol tcp esr(config-acl-rule)# match source-address any esr(config-acl-rule)# match destination-address any esr(config-acl-rule)# match source-port any esr(config-acl-rule)# match destination-port 80 esr(config-acl-rule)# enable esr(config-acl-rule)# exit esr(config-acl)# rule 40 esr(config-acl-rule)# action permit esr(config-acl-rule)# match protocol tcp esr(config-acl-rule)# match source-address any esr(config-acl-rule)# match destination-address any esr(config-acl-rule)# match source-port any esr(config-acl-rule)# match destination-port 8080 esr(config-acl-rule)# enable esr(config-acl-rule)# exit |
Настройка действие действия фильтрации по URL обязательнообязательна, а именно, необходимо настроить фильтрацию http-proxy на BRAS для неавторизованных пользователей:
...