5. Настройка NASов

5.1. Скрипт предобработки запроса

Основная информация, которую должна содержать конфигурация NASа - это его идентификатор, IP-адрес и секрет (необходим для шифрования пароля пользователя, должен совпадать на RADIUS, клиенте и сервере).

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

Настройка сервера доступа происходит в два шага.

Сначала кнопкой Новый элемент создаётся новый NAS, ему прописывается идентификатор (что будет приходить от него в атрибуте NAS-Identifier), IP-адрес (что будет приходить от него в атрибуте NAS-IP-Address), RADIUS-секрет, вендор и комментарий. Список вендоров задаётся в конфигурации модуля. После нажатия кнопки Ок должна появиться новая строка в таблице.

Вендор определяет код вендора, указываемый для h323-атрибутов, для большинства оборудования он должен быть Cisco.

Двойным кликом мыши откройте её для редактирования и кнопкой Создать добавьте текстовую конфигурацию. Название - произвольное.

Внимание

Возможна также настройка общих конфигураций для NASов. Создание общих конфигураций происходит аналогично описанному далее, за исключением того, что они могут использоваться в нескольких NASах, при этом локальные настройки имеют больший приоритет (т.е. если оба флага присутствуют и во включенной общей, и в выбранной локальной конфигурациях, то будет использован локальный).

Содержимое конфигурации должно содержать следующие данные:

1) Привязанную к NASу услугу: service=<код услуги>;

2) Необходимо настроить какие звонки считать исходящими, а какие - входящими для пользователя. Для определения направления используются атрибуты h323-call-type и h323-call-origin из RADIUS-запроса. Значения этих атрибутов, соответствующие каждому типу звонка, необходимо указать через дробь.

Ниже приведена конфигурация, которая может быть использована для популярного Гейткипера Aqua:

auth.in=voip/originate
auth.out=voip/answer
acct.in=voip/originate
acct.out=voip/answer

В этом случае авторизационные запросы с атрибутами h323-call-type=Voip h323-call-origin=originate будут считаться исходящими, h323-call-type=Voip h323-call-origin=answer входящими.

При необходимости можно указывать несколько сочетаний данных атрибутов через ;. Например:

acct.out=voip/answer;voip/proxy

STOP-пакет исходящего звонка может содержать как сочетание Voip Answer, так и Voip Proxy. Процесс подборки данных атрибутов эмпирический и зависит от вашего оборудования.

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

auth.out=all/all
acct.out=voip/originate

С версии 5.1 есть возможность отрезания реалма типа @xxx от атрибута, используемого как имя пользователя. Для этого в конфигурацию необходимо добавить, например:

realm.attr=User-Name
realm.value=ipnet.ru,voipnet.ru

Для идентификации сессии можно имспользовать значение атрибута Acct-Session-Id, для этого в конфигурацию добавить:

acct.session.id=1

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

acct.logError=1

Для полной обработки входящих звонков в конфигурацию нужно добавить:

auth.income.full=1

Подробные инструкции по интеграции BGRadiusVoip с различными NASами доступны в Wiki.