Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Подсистема AAA позволяет проверять права на совершение вызовов абонентом, слежение за потреблением ресурсов абонентом.

Этапы работы подсистемы ААА

Подсистема AAA подключается при обработки вызова на нижеперечисленных этапах (каждым из этапом может отсутствовать)

RADIUS маршрутизация

На этапе маршрутизации вызова в правиле контексте маршрутизации можно указать, что необходимо выполнить внешнюю RADIUS маршрутизацию.

В этом случае на RADIUS сервер посылаются следующие параметры:

  • текущие номера А, Б и их признаки;
  • имя текущего контекста машрутизации;
  • текущее значение параметра tag контекста машрутизации;
  • имя домена;
  • имя входящего интерфейса;
  • номер попытки маршрутизации (начинается с 1, и в в случае перемаршрутизации увеличивается);
  • причина release-а предыдущего вызова по SIP, ISUP, ACP (в случае перемаршрутизации).

В ответ RADIUS сервер может прислать команды на изменения номеров А, Б, их признаков, параметра tag

Authentication и Authorization

После маршрутизации, прежде чем отправить вызов на абонента Б, делается запрос в подсистему Authentication. На этом этапе проверяется, можно совершать вызов с номера А на номер Б, или нет.
Если Authentication подсистема вернула accept - вызов отправляется на абонента Б. Иначе, в зависимости от значения параметра if_radius_unavaliable, либо вызов идет на абонента Б, либо отбивается.

domain/<DOMAIN>/aaa/accounting/info if_radius_unavaliable

В параметре if_radius_unavaliable перечислены направления, на которые необходимо отправлять вызов даже если RADIUS сервер недоступен, не пропускает вызов (Например вызовы на номера спецслужб).
Access-Request сторону RADIUS содержит параметры, детально описанные в пункте Формат пакетов RADIUS и значение атрибутов CISCO VSA.

Accounting

После ответа абонента Б, система отправляет Acct-Start Request с информацией о начале вызова и времени ответа на RADIUS сервер. Детально параметры запроса описаны в пункте Формат пакетов RADIUS и значение атрибутов CISCO VSA.
В ответ RADIUS сервер может прислать максимальную продолжительность вызова (в секундах), запрет вызова (в этом случае система тут же отобьет вызов если он не разрешен в свойстве if_radius_unavaliable), таймаут посылки промежуточных Accounting сообщений Acct-Interim-Update.

Если абоненты А, Б воспользовались услугами ДВО, на RADIUS сервер посылаются Acct-Update Request с информацией об этом, в случае если параметр send_ss_notification = true

domain/<DOMAIN>/aaa/accounting/info send_ss_notification

По завершению вызова посылается сообщение Acct-Stop Request с информацией о абонентах А, Б, а так же о времени начала, ответа и завершения вызова.
В случае, если ответа на вызов не было Acct-Stop Request посылается только в том случае, если параметр unsuccessful_call_info = true.

domain/<DOMAIN>/aaa/accounting/info unsuccessful_call_info

Конфигурирование подсистемы AAA

Конфигурироавние подсистемы AAA состоит из трех этапов:

  1. Задание параметров подключения в RADIUS серверу(ам)
    Детально команды по управлению RADIUS серверами описаны в пункте Команды настройки параметров соединения с RADIUS-сервером.
  2. Конфигурирование подсистемы Authorization (access запросы)
    Детально команды по управлению службой Authorization описаны в пункте Команды управления службой RADIUS AAA (Authorization).
  3. Конфигурирование подсистемы Accounting (accounting запросы)
    Детально команды по управлению службой Accounting описаны Команды управления службой RADIUS AAA (Accounting).

Пример команд CoCon-а по конфигурированию подсистемы AAA

% Создаем access сервер
admin@[mycelium1@ryabkov]:/$ domain/test.domain/aaa/radius/declare billing_access 192.168.23.250 access secret123 retry-count = 3, retry-timeout = 250
Radius server "billing_access" successfully declared.

% Создаем accounting сервер
admin@[mycelium1@ryabkov]:/$ domain/test.domain/aaa/radius/declare billing_account 192.168.23.250 account secret123 retry-count = 3, retry-timeout = 250
Radius server "billing_account" successfully declared.

admin@[mycelium1@ryabkov]:/$ domain/test.domain/aaa/radius/info
┌───────────────┬─────────────────────────────┬──────────────────────┐
│     Name      │          Host:Port          │       Options        │
├───────────────┼─────────────────────────────┼──────────────────────┤
│billing_access │192.168.23.250:1812 (access) │secret = secret123    │
│               │                             │retry_count = 3       │
│               │                             │retry_timeout = 250 ms│
│               │                             │idle_timeout = 0 ms   │
│billing_account│192.168.23.250:1813 (account)│secret = secret123    │
│               │                             │retry_count = 3       │
│               │                             │retry_timeout = 250 ms│
│               │                             │idle_timeout = 0 ms   │
└───────────────┴─────────────────────────────┴──────────────────────┘

% выставляем RADIUS сервер billing_account в качестве access-сервера
admin@[mycelium1@ryabkov]:/$ domain/test.domain/aaa/access/set servers add billing_account
Property "servers" successfully changed from:

   to
1: billing_account.

% выставляем RADIUS сервер billing_account в качестве accounting-сервера
admin@[mycelium1@ryabkov]:/$ domain/test.domain/aaa/accounting/set servers add billing_account
Property "servers" successfully changed from:

   to
1: billing_account.

% включаем подсистему access
admin@[mycelium1@ryabkov]:/$ domain/test.domain/aaa/access/set enable true
Property "enable" successfully changed from:
false
   to
true.

% включаем подсистему accounting
admin@[mycelium1@ryabkov]:/$ domain/test.domain/aaa/accounting/set enable true
Property "enable" successfully changed from:
false
   to
true.

После этого при вызовах будут идти запросы на система AAA

  • Нет меток