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

RADIUS (Remote Authorization Dial-In User Service) - протокол безопасности, который предоставляет централизованный метод аутентификации пользователей путем обращения к внешнему серверу. Протокол RADIUS используется для аутентификации, авторизации и учета. Сервер RADIUS использует базу данных пользователей, которая содержит данные проверки подлинности для каждого пользователя. Таким образом, использование протокола RADIUS обеспечивает дополнительную защиту при доступе к ресурсам сети.
В системе поддержаны два независимых режима работы с сервером RADIUS:
Работа с сервером авторизации. Данный режим реализован для аутентификации и авторизации динамических абонентов, все аутентификационные данные в этом случае хранятся на RADIUS-сервере. Используется пакет Аccess-Request.
Работа с сервером учета (аккаунтинга). В этом случае для всех вызовов, совершенных через виртуальную АТС, будут отправляться запросы аккаунтинга (Accounting-Request) на RADIUS-сервер.
Примечание!В случае включения авторизации или аккаунтинга на RADIUS-сервере все вызовы сначала будут проходить авторизацию на RADIUS, после чего будут проходить по плану маршрутизации.
Описание каждого из режимов и процедуру настройки смотрите в Части 4 Руководство по управлению системой CSS-17, раздел 15. Настройка динамических абонентов и системы Radius.
Описание каждого RADIUS-пакета состоит из описания всех пар Атрибут-Значение (Attribute-Value Pair) для этого типа пакета. Атрибуты могут быть как стандартными, так и специфичными атрибутами вендоров (Vendor-Specific Attribute). Если значение атрибута неизвестно (например, при отсутствии исходящего транка невозможно определить значение переменной CdPN_OUT, которое используется в качестве значения некоторых атрибутов), то этот атрибут не добавляется в сообщение.
Для стандартных атрибутов описание имеет вид:
Имя атрибута(Номер атрибута): Значение атрибута
Для специфичных атрибутов вендоров описание имеет вид:
Имя атрибута(Номер атрибута): Имя вендора(Номер вендора): Имя VSA: Значение VSA
где:
Имя атрибута всегда Vendor-Specific;
Номер атрибута всегда 26;
Имя вендора – имя вендора;
Номер вендора – номер вендора, присвоенный ему организацией IANA в документе "PRIVATE ENTERPRISE NUMBERS" (http://www.iana.org/assignments/enterprise-numbers);
"Имя VSA" – имя атрибута вендора;
"Значение VSA" – значение атрибута вендора.
В качестве значения атрибута может использоваться конструкция вида <$NAME>, где NAME – это имя переменной. Описание значения переменных приведено ниже.
Пакет Аccess-Request: 
NAS-IP-Address(4): <$SSW_IP>
NAS-Port(5): <$SSW_PORT>
NAS-Port-Type(61): Async(0)
Service-Type(6): Login-User(1)
Framed-Protocol(7): SLIP(2)
User-Name(1): <$CgPN_IN>
Called-Station-Id(30): <$CdPN_IN>
Calling-Station-Id(31): <$CgPN_IN>
Digest-Attributes(207 для draft-sterman, иначе атрибуты передаются как отдельные параметры 104-122)
Digest-Response (206 для draft-sterman, иначе 103)
Message-Authenticator(80): <$Auth>
В ответ на данное сообщение ожидается одно из следующих сообщений: Access-Reject - в случае, если не было дано разрешение на выполнение вызова; Access-Accept - в случае, если разрешение на выполнение вызова было получено. В сообщение Access-Accept могут присутствовать следующие атрибуты:
Acct-Interim-Interval(85): <$INTERIM_INTERVAL>
Session-Timeout(27): <$SESSION_TIMEOUT>
Vendor-Specific(26): Cisco(9): h323-credit-time(102): <$H323_CREDIT_TIME>
Стартовый пакет Accounting-Request (Start):
Acct-Status-Type(40) - Start(1)
Acct-Session-Id(44): <$SESSION_ID>
NAS-IP-Address(4): <$SSW_IP>
User-Name(1): <$CgPN_IN>
Called-Station-Id(30): <$CdPN_IN>
Calling-Station-Id(31): <$CgPN_IN>
Event-Timestamp(55): согласно RFC2869
NAS-Port-Id(87): <$SESSION_ID>
NAS-Port-Type(61): Async(0)
Acct-Delay-Time(41): согласно RFC2866
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-src-number-in=<$CgPN_IN>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-src-number-out=<$CgPN_OUT>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-dst-number-in=<$CdPN_IN>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-dst-number-out=<$CdPN_OUT>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-route-retries=<$ROUTE_RETRIES>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): h323-call-id=<$CALL_ID>
Vendor-Specific(26): Cisco(9): h323-conf-id(24): h323-conf-id=<$CALL_ID>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): escc-domain-name=<$DOMAIN>
Vendor-Specific(26): Cisco(9): h323-setup-time(25): h323-setup-time=<$TIME_SETUP>
Vendor-Specific(26): Cisco(9): h323-call-origin(26): h323-call-origin=originate
Vendor-Specific(26): Cisco(9): h323-call-type(27): h323-call-type=<$CALL_TYPE>
Vendor-Specific(26): Cisco(9): h323-connect-time(28): h323-connect-time=<$TIME_CONNECT>
Vendor-Specific(26): Cisco(9): h323-gw-id(33): h323-gw-address=<$SSW_IP>
Vendor-Specific(26): Cisco(9): h323-gw-id(33): h323-gw-id=<$SSW_IP>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): h323-remote-id=<$OutTrunkGroup>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): in-trunkgroup-label=<$InTrunkGroup>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): out-trunkgroup-label=<$OutTrunkGroup>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): in-iface=<$InIface>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): out-iface=<$OutIface>
В ответ на данное сообщение ожидается сообщение Accounting-Response, в котором может присутствовать следующий атрибут:
Vendor-Specific(26): Cisco(9): h323-credit-time(102): <$H323_CREDIT_TIME>
Промежуточный пакет Interim Accounting Request (Update):
Acct-Status-Type(40) - Start(1)
Acct-Session-Id(44): <$SESSION_ID>
NAS-IP-Address(4): <$SSW_IP>
User-Name(1): <$CgPN_IN>
Called-Station-Id(30): <$CdPN_IN>
Calling-Station-Id(31): <$CgPN_IN>
Event-Timestamp(55): согласно RFC2869
NAS-Port-Id(87): <$SESSION_ID>
NAS-Port-Type(61): Async(0)
Acct-Session-Time(46): <$INTERIM_SESSION_TIME>
Acct-Delay-Time(41): согласно RFC2866
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-src-number-in=<$CgPN_IN>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-src-number-out=<$CgPN_OUT>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-dst-number-in=<$CdPN_IN>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-dst-number-out=<$CdPN_OUT>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-route-retries=<$ROUTE_RETRIES>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): h323-call-id=<$CALL_ID>
Vendor-Specific(26): Cisco(9): h323-conf-id(24): h323-conf-id=<$CALL_ID>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): escc-domain-name=<$DOMAIN>
Vendor-Specific(26): Cisco(9): h323-setup-time(25): h323-setup-time=<$TIME_SETUP>
Vendor-Specific(26): Cisco(9): h323-call-origin(26): h323-call-origin=originate
Vendor-Specific(26): Cisco(9): h323-call-type(27): h323-call-type=<$CALL_TYPE>
Vendor-Specific(26): Cisco(9): h323-connect-time(28): h323-connect-time=<$TIME_CONNECT>
Vendor-Specific(26): Cisco(9): h323-gw-id(33): h323-gw-address=<$SSW_IP>
Vendor-Specific(26): Cisco(9): h323-gw-id(33): h323-gw-id=<$SSW_IP>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): h323-remote-id=<$OutTrunkGroup>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): in-trunkgroup-label=<$InTrunkGroup>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): out-trunkgroup-label=<$OutTrunkGroup>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): in-iface=<$InIface>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): out-iface=<$OutIface>
В ответ на данное сообщение ожидается сообщение Accounting-Response, в котором может присутствовать следующий атрибут:
Vendor-Specific(26): Cisco(9): h323-credit-time(102): <$H323_CREDIT_TIME>
Завершающий пакет Accounting-Request (Stop):
Acct-Status-Type(40) - Stop(2)
Acct-Session-Id(44): <$SESSION_ID>
NAS-IP-Address(4): <$SSW_IP>
User-Name(1): <$CgPN_IN>
Called-Station-Id(30): <$CdPN_IN>
Calling-Station-Id(31): <$CgPN_IN>
Event-Timestamp(55): согласно RFC2869
NAS-Port-Id(87): <$SESSION_ID>
NAS-Port-Type(61): Async(0)
Acct-Session-Time(46): <$SESSION_TIME>
Acct-Delay-Time(41): согласно RFC2866
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-local-disconnect-isup-cause=<DISCONNECT_CAUSE>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-src-number-in=<$CgPN_IN>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-src-number-out=<$CgPN_OUT>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-dst-number-in=<$CdPN_IN>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-dst-number-out=<$CdPN_OUT>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-route-retries=<$ROUTE_RETRIES>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): h323-call-id=<$CALL_ID>
Vendor-Specific(26): Cisco(9): h323-conf-id(24): h323-conf-id=<$CALL_ID>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): escc-domain-name=<$DOMAIN>
Vendor-Specific(26): Cisco(9): h323-setup-time(25): h323-setup-time=<$TIME_SETUP>
Vendor-Specific(26): Cisco(9): h323-call-origin(26): h323-call-origin=originate
Vendor-Specific(26): Cisco(9): h323-call-type(27): h323-call-type=<$CALL_TYPE>
Vendor-Specific(26): Cisco(9): h323-connect-time(28): h323-connect-time=<$TIME_CONNECT>
Vendor-Specific(26): Cisco(9): h323-disconnect-time(29): h323-disconnect-time=<$TIME_DISCONNECT>
Vendor-Specific(26): Cisco(9): h323-disconnect-cause(30): h323-disconnect-cause=<$LOCAL_DISCONNECT_CAUSE>
Vendor-Specific(26): Cisco(9): Cisco-AVPair(1): xpgk-local-disconnect-cause=<$LOCAL_DISCONNECT_CAUSE>
Vendor-Specific(26): Cisco(9): h323-gw-id(33): h323-gw-address=<$SSW_IP>
Vendor-Specific(26): Cisco(9): h323-gw-id(33): h323-gw-id=<$SSW_IP>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): h323-remote-id=<$OutTrunkGroup>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): in-trunkgroup-label=<$InTrunkGroup>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): out-trunkgroup-label=<$OutTrunkGroup>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): in-iface=<$InIface>
Vendor-Specific(26): Cisco(9): h323-remote-id(1): out-iface=<$OutIface>
Таблица 10.1 - Описание переменных

Переменная

Описание и возможные значения

$CdPN_IN

номер вызываемого абонента до преобразования (принятого из интерфейса)

$CdPN_OUT

номер вызывающего абонента после преобразования (переданного в интерфейс)

$CgPN_IN

номер вызывающего абонента до преобразования (принятого из интерфейса)

$CgPN_OUT

номер вызывающего абонента после преобразования (переданного в интерфейс)

$LOCAL_DISCONNECT_CAUSE

причина завершения вызова в формате системы CSS-17, описание значений приведено в следующей таблице

$DISCONNECT_CAUSE

причина завершения вызова согласно рекомендации Q.850

$CALL_TYPE

тип вызова, всегда "Telephony"

$CALL_ID

идентификатор вызова

$SSW_IP

IP-адрес интерфейса системы CSS-17, аутентифицирующего пользователя

$SSW_PORT

транспортный порт интерфейса системы CSS-17, аутентифицирующего пользователя

$ROUTE_RETRIES

текущий номер попытки, отсчёт начинается с 1 (для первой попытки, соответственно)

$SESSION_ID

идентификатор сессии

$INTERIM_SESSION_TIME

время разговора к моменту отправки промежуточного сообщения

$SESSION_TIME

время продолжительности разговора

$TIME_SETUP

время поступления инициирующего запроса во входящий интерфейс в формате hh:mm:ss.uuu t www MMM dd yyyy

$TIME_CONNECT

время ответа вызываемой стороны в формате hh:mm:ss.uuu t www MMM dd yyyy

$TIME_DISCONNECT

время отбоя вызова одной из сторон в формате hh:mm:ss.uuu t www MMM dd yyyy

$DOMAIN

имя виртуальной АТС

$Auth

уникальный идентификатор запроса

$InTrunkGroup

имя входящей транковой группы

$OutTrunkGroup

имя исходящей транковой группы

$InIface

имя входящего интерфейса

$OutIface

имя исходящего интерфейса

$INTERIM_INTERVAL

интервал времени (в секундах), через который будут посылаться промежуточные Acct-Interim-Update сообщения. Значение должно быть не меньше 60. В случае, если на уровне домена задано свойство interim_interval (domain/DOMAIN_NAME/aaa/accounting/info), то значение $INTERIM_INTERVAL будет вычислено на основе его значения

$SESSION_TIMEOUT

выделенное время на разговор (в секундах). В случае, если время равно 0 - то вызов запрещен. -1 - вызов не ограничен

$H323_CREDIT_TIME

выделенное время на разговор (в секундах). В случае, если время равно 0 - то вызов запрещен. -1 - вызов не ограничен. В случае, если данный параметр пришел на Acct-Interim-Update запрос, то это время на оставшуюся часть разговора

Таблица 10.2 – Описание внутренних системных причин разъединения, которые могут передаваться в LOCAL_DISCONNECT_CAUSE

Внутренняя причина

Значение причины согласно рекомендации Q.850

Описание

normal

16

нормальное разъединение

originationDenied

16

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

authorisationFailure

50

ошибка авторизации

aPtyAbandon

16

вызывающий абонент положил трубку до ответа

invalidCollectedInformation

1

номер набран неверно, не найден маршрут

collectInformationFailure

1

ошибка сбора цифр номера, может возникнуть, когда система ожидает дополнительных цифр номера, но они не поступают до истечения таймера

aPtyDisc

16

разъединение по инициативе вызывающего абонента

bPtyDisc

16

разъединение по инициативе вызываемого абонента

routeSelectFailure

1

ошибка установления соединения, обычно возникает, когда все каналы в исходящем интерфейсе заняты либо от интерфейса принята ошибка

oNoAnswer

34

внутренняя ошибка, возникает, когда таймер ожидания ответа в плече вызывающего абонента истек, а со стороны плеча вызываемого абонента не было ни ответа, ни сообщения отбоя

terminationDenied

27

вызов на вызываемого абонента запрещен, например абонент заблокирован

notReachable

3

вызываемый абонент недоступен, например не зарегистрирован или номер не существует

bPtyNoAnswer

18

вызываемый абонент не отвечает

bPtyBusyUDUB

17

отбой по инициативе вызываемого абонента до ответа

bPtyBusyNDUB

17

вызываемый абонент занят

ss7Failure

38

ошибка на сети ОКС7

calledPartyRejected

21

вызов к вызываемому абоненту запрещен, например анонимный вызов на абонента с активным сервисом ACB

tException

41

ошибка обслуживания вызова, возникает обычно в случае системных проблем

routeFailure1

2

ошибка маршрутизации к вызываемому абоненту по причине занятости всех каналов в исходящем транке

routeFailure2

2

ошибка маршрутизации к вызываемому абоненту по причине занятости всех каналов направления на каком-то транзитном участке сети

conversationTimeout

31

возникает, когда истек таймер, ограничивающий общую продолжительность разговора

systemFailure

127

внутренняя неустранимая ошибка, детальное описание ошибки доступно в системном журнале


  • Нет меток