Logo

EcoRouter

EcoNAT

EcoQOE

EcoBypass

English

  • Release Notes
  • Удаленная аутентификация, авторизация и аккаунтинг EcoRouter Documentation / BRAS / Удаленная аутентификация, авторизация и аккаунтинг

    Удаленная аутентификация, авторизация и аккаунтинг при помощи RADIUS

    Для аутентификации, авторизации и/или аккаунтинга при помощи RADIUS необходимо указать, какой абонентский AAA-профиль должен для этого использоваться. Предварительно необходимо создать и настроить абонентский AAA-профиль.

    Для создания абонентского AAA-профиля используется команда в конфигурационном режиме subscriber-aaa <SUBSCRIBER_AAA>, где <SUBSCRIBER_AAA> - имя абонентского AAA-профиля.  Если профиль с указанным именем уже существует, а также после его создания в результате выполнения команды будет автоматически произведен переход в контекстный режим конфигурации этого профиля, префикс приглашения изменится на (config-sub-aaa).

    Для удаления абонентского AAA-профиля используется команда конфигурационного режима no subscriber-aaa <SUBSCRIBER_AAA>, где <SUBSCRIBER_AAA> - имя удаляемого абонентского AAA-профиля.

    В контекстном режиме конфигурации абонентского AAA-профиля оператор может отредактировать или удалить описание профиля, указать группы RADIUS-серверов для аутентификации и/или аккаунтинга.

    Для задания описания абонентского AAA-профиля используется команда контекстного конфигурационного режима (config-sub-aaadescription <TEXT>, где <TEXT> - строка описания.

    Для удаления описания абонентского AAA-профиля используется команда контекстного конфигурационного режима (config-sub-aaano description.

    Для установки режима аутентификации через RADIUS используется команда контекстного конфигурационного режима (config-sub-aaa) authentication radius <RADIUS_GROUP>, где <RADIUS_GROUP> - имя группы RADIUS-серверов.

    Для установки режима аккаунтинга через RADIUS используется команда контекстного конфигурационного режима (config-sub-aaa) accounting radius <RADIUS_GROUP>, где <RADIUS_GROUP> - имя группы RADIUS-серверов.

    Пример:

    ecorouter(config)#subscriber-aaa NEW_AAA
    ecorouter(config-sub-aaa)#authentication
    radius RADIUS authentication
    ecorouter(config-sub-aaa)#authentication radius 
    RADIUS_GROUP RADIUS server group
    ecorouter(config-sub-aaa)#authentication radius test
    ecorouter(config-sub-aaa)#accounting radius test2
    ecorouter(config-sub-aaa)#
    Subscriber AAA commands:
    accounting Subscriber AAA profile accounting method
    authentication Subscriber AAA profile authentication method
    description Subscriber AAA profile description
    exit Exit from the current mode to the previous mode
    help Description of the interactive help system
    no Negate a command or set its defaults
    show Show running system information
    ecorouter(config-sub-aaa)#

    Для использования настроенного профиля необходимо перейти в контекстный конфигурационный режим (config-subscriber-map) и выполнить команду set aaa <SUBSCRIBER_AAA>, где <SUBSCRIBER_AAA> - имя абонентского AAA-профиля для использования.

    В данный момент для установки сервиса от AAA-сервера требуется выполнение следующих условий:

    1) Наличие сконфигурированного абонентского сервиса (subscriber-service) на маршрутизаторе. 

    2) Конфигурация группы AAA-серверов для абонентов с помощью subscriber-aaa

    3) Полное соответствие имени абонентского сервиса и имени сервиса в сообщении от AAA-сервера.

    При соблюдении вышеуказанных требований, установить сервис от RADIUS-сервера можно с помощью команды set aaa <NAME>, где <NAME> соответствует заранее сконфигурированной группе AAA-серверов для абонентов. Напомним, что при наличии этой команды в карте абонента аутентификация и авторизация меняются с локальной на удаленную для этой последовательности в subscriber-map.

    Если от AAA-сервера приходит сервис, имя которого не найдено в конфигурации маршрутизатора, и локальных сервисов для этих абонентов не предусмотрено в subscriber-map, то сервис для клиентов считается недействительным и трафик от абонентов блокируется.

    Для использования настроенного профиля в PPPoE необходимо перейти в контекстный конфигурационный режим PPPoE профиля (config-pppoe) и выполнить аналогичную команду set aaa <SUBSCRIBER_AAA>.

    Параметры PPPoE при аутентификации через RADIUS-сервер

    Протокол PAP (Password Authentication Protocol)

    При аутентификации PPPoE-абонента через RADIUS-сервер с использованием протокола PAP маршрутизатор отправляет RADIUS access request со следующей информацией:

    • Service-Type - тип сервиса, который запросил клиент, для PPPoE это всегда "Framed";
    • User-Name - логин абонента;
    • User-Password - пароль абонента в зашифрованном виде;
    • Calling-Station-Id - MAC-адрес абонента;
    • NAS-Identifier - имя маршрутизатора, указанное в hostname;
    • NAS-Port-Id - <имя порта маршрутизатора>:<имя интерфейса>:<c-vlan>:<s-vlan> - порт и интерфейс указываются те, на которые пришёл пакет, ставший триггером для отправки запроса на RADIUS-сервер (пакет-триггер). Метки VLAN указываются те, которые присутствовали в заголовке пакета-триггера;
    • NAS-Port-Type - тип порта, на который пришёл пакет-триггер;
    • Acct-Session-Id - идентификатор абонентской сессии - генерируется маршрутизатором на основе следующих ключей - IP-адрес абонента и время поднятия сессии;
    • NAS-IP-Address - IP-адрес, идентифицирующий маршрутизатор - если на устройстве создан интерфейс loopback.0 и на него назначен IP-адрес, то в этот атрибут будет записан адрес с интерфейса loopback.0. Если интерфейс loopback.0 отсутствует в конфигурации маршрутизатора, то в этот атрибут будет записан IP-адрес с интерфейса, с которого был отправлен RADIUS access request;
    • Framed-Protocol - тип инкапсулирующего протокола. В текущей реализации - PPP;
    • NAS-Port - c-vlan - внутренняя метка VLAN из заголовка пакета-триггера.

    Протокол CHAP (Challenge Handshake Authentication Protocol)

    При аутентификации PPPoE абонента через RADIUS-сервер с использованием протокола CHAP маршрутизатор отправляет вместо атрибута User-Password следующие атрибуты:

    • CHAP-Password - MD5-хэш на основе пароля абонента и challenge;
    • CHAP-Challenge - генерируемое маршрутизатором случайное значение, необходимое для генерации chap-password.

    Остальные атрибуты совпадают с атрибутами при использовании протокола PAP.

    Параметры IPoE при аутентификации через RADIUS-сервер

    При аутентификации абонента через RADIUS-сервер маршрутизатор отправляет RADIUS access request со следующей информацией:

    • User-Name - MAC-адрес абонента;
    • Framed-IP-Address - IP-адрес абонента;
    • Calling-Station-Id - MAC-адрес абонента;
    • NAS-Identifier - имя маршрутизатора, указанное в hostname;
    • NAS-Port-Id - <имя порта маршрутизатора>:<имя интерфейса>:<c-vlan>:<s-vlan> - порт и интерфейс указываются те, на которые пришёл пакет, ставший триггером для отправки запроса на RADIUS-сервер (пакет-триггер). Метки VLAN указываются те, которые присутствовали в заголовке пакета-триггера;
    • NAS-Port-Type - тип порта, на который пришёл пакет-триггер;
    • CIRCUIT_ID: <DHCP option 82 circuit-id> - субатрибут атрибута Vendor-Specific(26). Для отображения этих параметров на RADIUS-сервере следует произвести соответствующие настройки в словаре сервера;
    • REMOTE_ID: <DHCP option 82 remote-id> - субатрибут атрибута Vendor-Specific(26). Для отображения этих параметров на RADIUS-сервере следует произвести соответствующие настройки в словаре сервера;
    • NAS-IP-Address - IP-адрес, идентифицирующий маршрутизатор - если на устройстве создан интерфейс loopback.0 и на него назначен IP-адрес, то в этот атрибут будет записан адрес с интерфейса loopback.0. Если интерфейс loopback.0 отсутствует в конфигурации маршрутизатора, то в этот атрибут будет записан IP-адрес с интерфейса, с которого был отправлен RADIUS access request;
    • NAS-Port - c-vlan - внутренняя метка VLAN из заголовка пакета-триггера.

    При аутентификации абонента через RADIUS-сервер маршрутизатор обрабатывает следующие атрибуты в RADIUS access reply:

    • Idle-Timeout - idle-timeout сессии;
    • Session-Timeout - session-timeout сессии;
    • Acct-Interim-Interval - update-interval сессии;
    • Class - стандартный атрибут, тип 25;
    • SERVICE_NAME - имя сервиса, который будет применен на сессию. Сервис будет применен на сессию при условии, что он создан на маршрутизаторе при помощи команды subscriber-service <service_name>.

    Параметры accounting request

    После аутентификации абонента, если для него была заведена сессия, маршрутизатор отправляет accounting request сообщения со следующей информацией:

    Acct-Status-Type - тип accounting request сообщения - в текущей реализации может принимать значения - start, stop и interim-update;

    Acct-Session-Id - идентификатор абонентской сессии - идентификатор генерируется маршрутизатором на основе следующих ключей - IP-адрес абонента и время поднятия сессии;

    Event-Timestamp - время отправки сообщения;

    Framed-IP-Address - IP-адрес абонента;

    User-Name - логин абонента;

    NAS-Port - c-vlan - внутренняя метка vlan из заголовка пакета-триггера.

    NAS-Identifier - имя маршрутизатора, указанное в hostname;

    NAS-Port-Id - <имя порта маршрутизатора>:<имя интерфейса>:<c-vlan>:<s-vlan> - порт и интерфейс указываются те, на которые пришёл пакет-триггер (пакет, ставший триггером для отправки запроса на RADIUS-сервер). Метки vlan указываются те, которые присутствовали в заголовке пакета-триггера;

    NAS-Port-Type - тип порта, на который пришёл пакет-триггер;

    NAS-IP-Address -IP-адрес, идентифицирующий маршрутизатор - если на устройстве создан интерфейс loopback.0 и на него назначен IP-адрес, то в этот атрибут будет записан адрес с интерфейса loopback.0. Если интерфейс loopback.0 отсутствует в конфигурации маршрутизатора, то в этот атрибут будет записан IP-адрес с интерфейса, с которого был отправлен RADIUS access request;

    Service-Type - тип сервиса, который запросил клиент, для PPPoE это всегда "Framed";

    Framed-Protocol - тип инкапсулирующего протокола. В текущей реализации - PPP;

    Acct-Authentic - способ аутентификации абонента - в текущей реализации может принимать значения - radius и local;

    Event-Timestamp - дата и время отправки сообщения;

    Acct-Status-Type - start/stop/Interim-Update;

    Calling-Station-Id - MAC-адрес абонента;

    Acct-Session-Time - текущее время жизни сессии;

    Acct-Input-Packets - количество пакетов, отправленных абонентом в течение сессии;

    Acct-Input-Octets - количество байт, отправленных абонентом в течение сессии;

    Acct-Input-Gigawords - количество переполнений счетчика Acct-Input-Octets;

    Acct-Output-Packets - количество пакетов, отправленных абоненту в течение сессии;

    Acct-Output-Octets - количество байт, отправленных абоненту в течение сессии;

    Acct-Output-Gigawords - количество переполнений счетчика Acct-Output-Octets;

    Acct-Delay-Time - время, которое было затрачено на отправку accounting request сообщения;

    Acct-Terminate-Cause - причина, по которой сессия была сброшена маршрутизатором, в текущей реализации может принимать следующие значения:

    • Idle Timeout (истечение idle-timeout),
    • Session Timeout (истечение session-timeout),
    • Admin Reset (выполнение команды clear subscribers),
    • Port Error (удаление или выключение соответствующего bmi-интерфейса),
    • Service Unavailable (запрос RADIUS-сервером не настроенного на маршрутизаторе сервиса).