Аутентификация, авторизация и аккаунтинг EcoRouter Documentation / BRAS / Аутентификация, авторизация и аккаунтинг
Локальная аутентификация
IPoE-абонент считается локально аутентифицированным, если IP-адрес абонента соответствует статическому или динамическому правилу в последовательности subscriber-map, в которой отсутствует команда set aaa c указанием имени группы удаленных AAA RADIUS-серверов.
Для PPPoE абонентов возможность локальной аутентификации отсутствует, однако можно полностью отключить аутентификацию абонентов в PPPoE профайле с помощью команды no authentication. В этом случае любая попытка абонентского PPP подключения будет считаться успешной.
Локальная авторизация
Под авторизацией подразумевается конфигурация для абонентов определенных сервисов (с какой скоростью осуществляется передача данных для абонента в разных направлениях). Существует возможность использования локально сконфигурированного сервиса, а также полученного через удаленный RADIUS-сервер. Приведенные ниже сведения относятся как к абонентам IPoE, так и PPPoE.
Для настройки скорости доступа для профиля (IPoE/PPPoE) необходимо создать subscriber-service. Созданный subscriber-service может быть привязан к PPPoE-профилю или к картам абонентов IPoE вручную или получен с RADIUS-сервера:
ecorouter(config)#subscriber-service ?
SUBSCRIBER_SERVICE Subscriber service name
Для subscriber-service следует назначить subscriber-policy.
ecorouter(config-sub-service)#set ?
policy Set policy
ecorouter(config-sub-service)#set policy ?
SUBSCRIBER_POLICY_NAME Subscriber policy name
<cr>
В subscriber-policy указывается скорость абонента для upstream- и downstream-пакетов в kbps и применяется filter-map policy (также для upstream и downstream):
ecorouter(config)#subscriber-policy <NAME>
ecorouter(config-sub-policy)#bandwidth ?
in Upstream packets
out Downstream packets
ecorouter(config-sub-policy)#bandwidth in
kbps Bandwidth value in kbps
ecorouter(config-sub-policy)#bandwidth in kbps ?
<64-10000000> Kbits per second
ecorouter(config-sub-policy)#set filter-map ?
in Upstream packets
out Downstream packets
ecorouter(config-sub-policy)#set filter-map in ?
FILTER_MAP_POLICY_IPV4 Filter map name
ecorouter(config-sub-policy)#set filter-map in
В filter-map policy указывается параметр, по которому к абонентам будут применяться настройки.
ecorouter(config)#filter-map policy ipv4 ?
FILTER_MAP_POLICY_IPV4 Filter map name
ecorouter(config)#filter-map policy ipv4 <NAME> ?
<0-65535> Sequence number
<cr>
ecorouter(config)#filter-map policy ipv4 <NAME> 10
Например:
filter-map policy ipv4 <NAME> 10
match any any any
set accept
После настройки subscriber-service можно вручную задать его применение в PPPoE-профиле и карте абонентов IPoE:
ecorouter(config-pppoe)#set subscriber-service ?
SUBSCRIBER_SERVICE Specify subscriber service name
Ниже приведен пример полной настройки для PPPoE.
1. Настройка filter-map policy.
ecorouter(config)#filter-map policy ipv4 50kk 10
ecorouter(config-filter-map-policy-ipv4)#match any any any
ecorouter(config-filter-map-policy-ipv4)#set accept
2. Настройка subscriber-policy.
ecorouter(config)#subscriber-policy 50kk
ecorouter(config-sub-policy)#bandwidth in kbps 500032
ecorouter(config-sub-policy)#bandwidth out kbps 500032
ecorouter(config-sub-policy)#set filter-map in 50kk
ecorouter(config-sub-policy)#set filter-map out 50kk
3. Настройка subscriber-service.
ecorouter(config)#subscriber-service 50kk
ecorouter(config-sub-service)#set policy 50kk
4.1 Задание subscriber-service.
Применение subscriber-service вручную к ppppoe-profile:
ecorouter(config)#pppoe-profile 0
ecorouter(config-pppoe)#set subscriber-service 50kk
4.2 В случае применения сервиса с RADIUS-сервера на нем необходимо задать атрибут.
5. После установки соединения состояние сервиса можно посмотреть командой show subscribers <interface bmi> <ip addr>.
5.1 В случае задания subscriber-service вручную после названия сервиса будет добавлено "(L)", что означает "local".
ecorouter#show subscribers bmi.0 192.168.10.2
...
service: 50kk(L)
...
5.2 В случае получения subscriber-service от RADIUS-сервера после названия сервиса будет добавлено "(R)", что означает "remote aaa".
ecorouter#show subscribers bmi.0 192.168.10.2
...
service: 50kk(R)
…
Локальная авторизация для IPoE-абонентов конфигурируется аналогичным образом, установкой нужного subscriber-service в последовательности subscriber-map. По умолчанию авторизация через RADIUS имеет наибольший приоритет, ключевое слово strict в команде set subscriber-service <NAME> позволяет сделать локальную авторизацию приоритетной.
Отсутствие сервиса в карте абонента
Если в одной из последовательностей карты абонента отсутствует правило set, то в этой последовательности все абоненты, попавшие под правило match (отсутствие правила match соответствует всем IP-адресам), попадают под неявное правило DROP. Весь трафик от этих абонентов блокируется, а сервис считается недействительным. Время жизни для таких сессий устанавливается 5 мин, то есть, сессия будет удалена автоматически из глобальной таблицы абонентов через 5 мин.
Группы RADIUS-серверов
Для удаленной авторизации/аутентификации и аккаунтинга на EcoRouter поддерживается использование групп RADIUS-серверов. Данная функциональность используется для настройки RADIUS для BRAS (авторизация и аккаунтинг должны производиться на различных RADIUS-серверах).
В текущей реализации допускается создание до 16 различных групп, каждая из которых может содержать до 16 RADIUS-серверов. При этом один и тот же сервер может принадлежать к нескольким группам одновременно.
Для создания группы RADIUS-серверов используется команда конфигурационного режима radius-group <RADIUS_GROUP>, где <RADIUS_GROUP> - имя создаваемой группы RADIUS-серверов. Если группа с указанным именем уже существует, а также после ее создания в результате выполнения команды будет автоматически произведен переход в контекстный режим конфигурации этой группы, префикс приглашения изменится на (config-radius-group).
Для удаления группы RADIUS-серверов используется команда конфигурационного режима no radius-group <RADIUS_GROUP>, где <RADIUS_GROUP> - имя удаляемой группы RADIUS-серверов.
В контекстном режиме конфигурации группы RADIUS-серверов (config-radius-group) можно отредактировать или удалить описание группы, настроить режим ее работы, изменить параметры выбранного RADIUS-сервера или удалить выбранный RADIUS-сервер из группы. Данные команды и параметры описаны в таблице ниже.
Команда/параметр | Описание |
---|---|
description <TEXT> | Задание описания группы RADIUS-серверов. <TEXT> - строка описания |
no description | Удаление описания группы RADIUS-серверов |
mode <MODE> | Настройка режима работы группы RADIUS-серверов. Допустимые значения режима работы группы RADIUS-серверов - <MODE>:
Значение по умолчанию - active-standby |
transmission-rate threads <NUMBER> packets <NUMBER> | Количество одновременно отправляемых запросов на RADIUS-сервер. Задаётся двумя параметрами:
Общее количество запросов - произведение threads x packets |
Настройка таймеров | |
request-max-tries <NUMBER> | Количество запросов, после отсутствия ответа на которые сервер будет считаться недоступным (DEAD). Значение по умолчанию - 3 |
request-timeout <INTERVAL> | Временной интервал между отправкой запросов в секундах. Значение по умолчанию - 3 секунды |
dead-time-interval <MIN> <MAX> | Временной интервал в секундах, в течение которого сервер будет находиться в состоянии DEAD. Задаются минимальное <MIN> и максимальное <MAX> значения. По умолчанию <MIN> - 15 секунд, <MAX> - 300 секунд. Допустимые значения <MIN> и <MAX> - от 0 до 65535. Принцип использования dead-time-interval После отсутствия ответа RADIUS-сервера на <NUMBER> запросов (параметр request-max-tries), ранее отмеченного как ACTIVE, такой сервер помечается как DEAD на период <MIN>, и роутер, посылающий запросы, перенаправляет их на резервный RADIUS-сервер внутри группы. По окончании этого интервала запросы будут вновь посланы на ставший неактивным RADIUS-сервер. Если он ответит, то вновь станет ACTIVE. Если RADIUS-сервер не ответит, то останется помеченным как DEAD. Интервал для такого его состояния будет увеличен на <MIN> (то есть после первой неудачной попытки интервал составит <MIN>, после второй - 2*<MIN>, после третьей - 3*<MIN> и т.д.). Так будет продолжаться до того момента, пока интервал назначения отметки DEAD не достигнет значения <MAX>. После этого попытки обращения к такому RADIUS-серверу будут делаться раз в интервал <MAX> до первого успешного перехода RADIUS-сервера в состояние ACTIVE. Если <MAX> не кратен <MIN>, то интервал станет равным <MAX> после первого его превышения в результате увеличения на очередной <MIN> |
Настройка формата атрибута Calling-Station-Id | |
attribute mac default | Использовать формат по умолчанию. Имеет вид - XXXX.XXXX.XXXX |
attribute mac ietf | Использовать формат IETF. Имеет вид - XX-XX-XX-XX-XX-XX |
attribute mac unformatted | Использовать формат без разделителей. Имеет вид - XXXXXXXXXXXX |
Настройка формата атрибута Nas-Port | |
attribute nas-port default | Использовать комбинацию VLAN: сервисного и клиентского |
attribute nas-port session-id | Использовать идентификатор сессии |
Настройка формата атрибута username | |
attribute username format <> | Формат атрибута username. Возможные значения:
Разделитель для этих полей - символ '-'. Атрибут модифицируется только для IPoE абонентов |
Настройка подсчета трафика по сессии | |
attribute accounting direction port | Направление трафика относительно порта маршрутизатора |
attribute accounting direction subscriber | Направление трафика относительно пользователя |
Настройка параметров отдельного сервера в группе
Для настройки параметров RADIUS-сервера в группе используется следующая команда контекстного конфигурационного режима (config-radius-group):
server A.B.C.D secret <WORD> [priority <0-65535> | vrf <VRF> | source A.B.C.D | auth-port <1-65535> | acct-port <1-65535> | coa-listen-port <1-65535>]
IP-адрес и секретный ключ - обязательные параметры. Остальные параметры не являются обязательными и могут быть заданы в любом порядке. Если при вызове команды указан IP-адрес существующего RADIUS-сервера, то будут изменены его параметры. Иначе будет создан RADIUS-сервер с указанным IP-адресом.
Параметры команды описаны в таблице ниже.
Параметр | Описание |
---|---|
server A.B.C.D | IP-адрес RADIUS-сервера |
secret <WORD> | Значение атрибута secret (по умолчанию не задан) |
priority <0-65535> | Приоритет RADIUS-сервера (актуально для режима active/standby). Чем меньше значение, тем выше приоритет |
vrf <VRF> | Имя VRF, в котором задан IP-адрес RADIUS-сервера (значение по умолчанию - VRF текущего виртуального маршрутизатора) |
source A.B.C.D | IP-адрес, который будет указан в качестве адреса источника в пакете запроса (по умолчанию - адрес интерфейса, с которого уходит запрос) |
auth-port <1-65535> | Порт для запросов аутентификации (значение по умолчанию 1812) |
acct-port <1-65535> | Порт для запросов аккаунтинга (значение по умолчанию 1813) |
coa-listen-port <1-65535> | Порт, на основе которого на BRAS будет открыт сокет для обработки coa и disconnect запросов. |
Для удаления RADIUS-сервера из группы используется команда контекстного конфигурационного режима (config-radius-group) no server A.B.C.D [vrf <VRF>].
Пример:
ecorouter(config)#radius-group test
ecorouter(config-radius-group)#server 3.3.3.2 secret 12121212
ecorouter(config-radius-group)#server 3.3.3.4 secret dsfsfsf
ecorouter(config-radius-group)#mode active-standby
ecorouter(config-radius-group)#description ABRACADABRA
?corouter(config-radius-group)#
RADIUS group commands:
dead-time-interval Specify a RADIUS servers dead time interval
description Redirect URL description
exit Exit from the current mode to the previous mode
help Description of the interactive help system
mode Specify a RADIUS group mode
no Negate a command or set its defaults
request-max-tries Specify a RADIUS servers max number of tries to
retransmit a request
request-timeout Specify a RADIUS servers response waiting time
server Specify a RADIUS server
show Show running system information
ecorouter(config-radius-group)#server 3.3.3.3 vrf test source 12121212
Соответствующий фрагмент конфигурации будет иметь следующий вид:
!
radius-group test
description ABRACADABRA
mode active-standby
dead-time-interval 15 300
request-max-tries 3
request-timeout 3
server 3.3.3.2 secret 12121212 priority 10
server 3.3.3.4 secret dsfsfsf priority 20
server 3.3.3.3 secret fsfd priority 30 vrf test source 12121212
!