UTIM 5. Руководство администратора

Описание системы Основные функции системы

Биллинговая система (автоматизированная система расчётов, АСР) NetUP UTM является полноценным решением для организации автоматического расчёта операторов связи с абонентами за предоставляемые услуги. Базовый модуль системы поддерживает обсчёт выделенных линий. Помимо этого, система позволяет создавать и вести учёт как периодических, так и разовых услуг. При использовании дополнительных модулей система может обсчитывать услуги IP-телефонии, коммутируемого доступа с учётом стоимости времени и беспроводного доступа к сети (хотспот).

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

АСР NetUP UTM поддерживает ведение справочника клиентов, справочника банков, справочника маршрутизаторов и брандмауэров, справочника зон IP-адресов, справочника подключённых домов, справочника предоставляемых услуг и других справочников.

Описание системы

Настоящая версия системы NetUP UTM создавалась с учётом опыта работы и пожеланий пользователей предыдущих версий программы. Так, в системе реализована функция клиента, как дилера оказываемых провайдером услуг. Для удобства работы программа администрирования выполнена в виде графического совместимого с любой платформой интерфейса, написанного на языке программирования Java.

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

Систему можно использовать для генерирования бухгалтерских счетов и различных отчётов, ведения базы договоров. Для более удобной технической поддержки клиентов в системе имеется встроенная служба обмена сообщениями.

При необходимости система может блокировать доступ клиента к услугам, например, при исчерпании средств на лицевом счёте.

Пользовательский интерфейс системы построен на основе веб-технологий, что позволяет клиенту получать доступ к своему счёту, выпискам и статистике из любой точки мира с помощью любого браузера через интернет. Использование технологии XML и шаблонов при создании клиентского интерфейса позволяет администратору системы самостоятельно менять внешний вид интерфейса без ущерба его функциональности.

Использование в системе такого понятия, как «класс трафика» позволяет вести учёт трафика из разных сетей, например, разделение трафика на отечественный и зарубежный, пиринговый и локальный. Разделение классов трафика можно производить по самым различным признакам: сети источника и получателя, порты источника и получателя, тип службы (TOS), протокол, автономные системы источника и получателя, интерфейс маршрутизатора, через который проходит пакет и многое другое.

Описание системы

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

Способы включения системы в сеть

Универсальность биллинга допускает множество способов интеграции системы в существующую или планируемую инфраструктуру сети. АСР NetUP UTM поддерживает работу с множеством аппаратных и программных маршрутизаторов и не накладывает ограничения на количество одновременно обсчитываемых каналов связи и тип используемых при организации этих каналов устройств. Рассмотрим основные варианты.

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

Маршрутизаторы Cisco, Mikrotik, NSG, Revolution и других производителей, как правило, включают возможность экспорта статистики о переданном трафике. В этом случае сервер с биллингом может быть установлен как внутри локальной сети, так и вне неё (например, в головном офисе, доступном через интернет). Сбор статистики о трафике и управление маршрутизаторами производится удалённо.

Интернет При таком способе подключения биллинговую систему можно установить как на самом роутере, так и на удалённом сервере. Статистика снимается с интерфейса роутера и обрабатывает-

Описание системы

ся на локальной машине (в первом случае) или передаётся по сети и обрабатывается на другом сервере (во втором случае).

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

Клиент подключается к интернету посредством коммутируемого доступа

В данном случае сервером доступа может быть как Cisco, так и PC-роутер с подключёнными к нему модемами. Авторизация клиентов производится по протоколу RADIUS. Тарификация может производиться как по времени соединения, так и по объёму трафика клиентов.

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

Структура системы UTM

Биллинговая система UTM представляет собой комплекс приложений, составляющий три группы: ядро системы, интер-

приложение, устанавливаемое на рабочую станцию администратора и позволяющее настраивать систему и управлять ею. Это приложение является платформенно-независимым и может исполняться под управлением любой ОС: Windows, Linux, FreeBSD. Интерфейс пользователя — это набор программ, работающих совместно с веб-сервером и реализующих виртуальный кабинет пользователя системы.

Ядро биллинговой системы

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

Основные компоненты ядра

Обработчик запросов URFA (UTM Remote Function Access) является сервером вызовов удалённых процедур. Он принимает

Описание системы

Описание системы Основные функции системы


Flow версии 5. Для устройств, не поддерживающих выдачу статистики по этому протоколу, необходимо воспользоваться преобразователем статистики из любого протокола в NetFlow версии 5 - утилитой get_xyz.

Классификатор трафика - модуль ядра, осуществляющий сортировку всего трафика на категории (классы трафика) по признакам, обозначенным в настройках системы. Признаки классификации задаются в центре управления UTM.

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

Системный журнал сообщений ведёт все записи о функционировании UTM. Он позволяет администраторам проводить диагностику системы и получать информацию о сбоях в работе системы.

Описание системы

Модуль доступа к базам данных представляет собой унифицированный интерфейс БД и осуществляет перевод внутрисистемных запросов к данным в запросы к внешней базе данных. Это позволяет добиться независимости UTM от какой-либо конкретной системы управления БД.

Прием данных происходит посредством буфера NetFlow и URFA. Исходные данные считываются из базы данных при запуске. Изменения, сделанные впоследствии напрямую в базу, могут привести к неконтролируемому поведению системы.

NetFlow данные поступают на обработку в бизнес-модуль, где рассчитываются все необходимые списания. В случае высокой пиковой загрузки NetFlow поток может быть буферизован, что несколько снизит возможные потери. «Сырые» данные

NetFlow сохраняются посредством объектно-ориентированной базы данных GigaBase ( gigabase.html). При старте модуль этой БД создаётся в отдельной нити и, по возможности, с высоким приоритетом.

URFA поддерживает динамическую загрузку модулей (libur-fa). Они могут быть как выгружаемыми, так и постоянными. Последние - это модули, содержащие критичные для управления системой вызовы или выгрузка которых может привести к сбоям. Первые - это, обычно, просто библиотеки вызовов. Загруженные в данный момент модули можно просмотреть в интерфейсе администратора во вкладке (Дополнительно | Плагины).

Разграничение прав

В системе пользователи делятся на две категории: пользователи (клиенты, абоненты) и администраторы (системные пользователи). В зависимости от типа пользователя, у него есть некоторый список разрешённых операций. Проверить список разрешённых пользователям операций можно в разделе (Дополнительно | Символы). Операции с идентификатором, большим 0x80000000, разрешены на исполнение только клиентам, остальные операции - только администраторам.

Описание системы

Разделение ролей администраторов происходит на основе системных групп, которым принадлежит администратор. Существует специальная группа с идентификатором 1 (wheel). Если системный пользователь в неё входит, то ему разрешено исполнение любых операций. Иначе права будут ограничены списком вызовов, разрешенных группам, в которых он состоит. Случаи вызова запрещённых операций заносятся в системный журнал ядра.

UTM Remote Function Access (URFA)

URFA - это модуль доступа к ядру системы из внешних приложений. Он проводит авторизацию пользователей по схеме CHAP и обеспечивает работу удалённого пользователя. Протокол поддерживает передачу данных и вызов функций. URFA проверяет, разрешён ли данному пользователю доступ к вызы-

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

Каждой сессии выделяется 128-битный случайный идентификатор (SID), повторение которого исключается. Этот SID может быть использован повторно для открытия доступа. В случае сбоя при восстановлении сессии SID будет удален, и пользователь вновь будет вынужден ввести логин и пароль. SID привязывается к IP-адресу клиента и автоматически удаляется после некоторого времени простоя (см. переменную web_session_timeout). Восстановление сессии возможно лишь в случае, когда получен доступ с правами системного пользователя.

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

Описание системы

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

В случае сбоя при проверке лицензий модуль не будет подгружен. Лицензии привязываются к двоичному коду модуля, что гарантирует пользователю то, что загруженный модуль действительно собран в компании NetUP и полностью отвечает требованиям безопасности и корректности работы. Однако это требует, чтобы при обновлении модуля была получена обновленная лицензия.

Установка и первоначальная настройка системы Краткая последовательность шагов при установке и настройке системы Установка и запуск

• Установите биллинговую систему на сервер согласно инструкции. Запустите программу utm5_core.

• Загрузите и установите на компьютер администратора виртуальную машину Java версии 2. Запустите программу UTM_admin.

• Смените пароли для системных пользователей web, init и radius.

• После смены паролей внесите соответствующие коррективы в файлы/netup/utm5/web5.cfg и /netup/utm5/radius5. cfg.

Настройка тарификации (в случае первой установки системы)

• Создайте в интерфейсе администратора нужные расчётные периоды.

• Создайте необходимые классы трафика, временные диапазоны в настройках тарификации.

Установка системы

• Выставьте курсы валют в системе. По умолчанию курс рубля к курсу внутренней единицы равен 1, т. е. баланс пользователей отображается в рублях. Измените этот курс, если хотите вести лицевые счета в других единицах.

• Создайте услуги, выставьте периоды их действия и стоимость.

• Приступайте к добавлению пользователей.

Конвертирование базы данных (в случае обновления системы)

Произведите преобразование базы данных предыдущей версии биллинга по инструкции. Необходимые параметры для тарификации будут перенесены из существующей БД.

Проверка корректности работы

• Настройте и запустите коллектор.

• Прокачав некоторое количество трафика в сторону заведённого в системе клиента, проверьте появление данных о прокачанном трафике в отчётах (детальный отчет по трафику, отчет по трафику).

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

Установка серверной части Linux

На сервер должна быть установлена операционная система Linux (RedHat 9.0, либо любой другой дистрибутив) и дополнительные пакеты: веб-сервер Apache 1.3.x с поддержкой SSL и сервер баз данных MySQL 3.x, 4.x, либо Postgresql 7.x. Настоятельно рекомендуем использовать MySQL с поддержкой InnoDB, так как данное решение позволит существенно повысить надежность хранения целостности данных. Более подробная информация доступна на сайте разработчика http:// dev.mysql.com/doc/mysql/ru/InnoDB.html.

Для установки необходимо выполнить команду:

Установка системы

rpm -i utm-5-0.i386.rpm

В результате будут созданы директории:

/netup - содержит основные рабочие файлы, файлы конфигурации, директорию для системного журнала.

/usr/local/apache/cgi-bin/utm5 - веб-интерфейс пользователя.

/usr/local/apache/htdocs/utm - таблица стилей, скрипты.

Если у вашего веб-сервера другие пути, то следует переместить файлы в соответствующие директории.

Также будут скопированы скрипты запуска:

/etc/rc.d/init.d/utm5_core

/etc/rc.d/init.d/ndsad

Для создания первоначальной базы данных выполните команды:

Для MySQL

mysqladmin create UTM5

mysql UTM5 < /netup/utm5/UTM5_MYSQL.sql

Для Postgresql

createdb -U postgres UTM5

psql -f /netup/utm5/UTM5_PG.sql -U postgres UTM5

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

/etc/rc.d/init.d/utm5_core start

Для автоматического запуска ядра UTM при загрузке Linux выполните команды:

chkconfig --add utm5_core chkconfig utm5_core on

FreeBSD

Установка системы

На сервер должна быть установлена операционная система FreeBSD 4.x, 5.x, а также дополнительные пакеты: веб-сервер Apache 1.3.x с поддержкой SSL и сервер баз данных MySQL 3.x, 4.x, либо Postgresql 7.x. Настоятельно рекомендуем использовать MySQL с поддержкой InnoDB, так как данное решение позволит существенно повысить надежность хранения целостности данных. Более подробная информация доступна на сайте разработчика doc/mysql/ru/InnoDB.html.

Для установки необходимо выполнить команду

pkg_add utm5.tgz

В результате будут созданы директории.

/netup - содержит основные рабочие файлы, файлы конфигурации, директорию для системного журнала.

/usr/local/apache/cgi-bin/utm5 - веб-интерфейс пользователя.

/usr/local/apache/htdocs/utm - таблица стилей, скрипты.

Если у вашего веб-сервера другие пути, то следует переместить файлы в соответствующие директории.

Также будут скопированы скрипты запуска.

/usr/local/etc/rc.d/utm5_core.sh

/usr/local/etc/rc.d/ndsad.sh

Для создания первоначальной базы данных выполните команды.

Для MySQL.

mysqladmin create UTM5

mysql UTM5 < /netup/utm5/UTM5_MYSQL.sql

Для Postgresql.

createdb -U postgres UTM5

psql -f /netup/utm5/UTM5_PG.sql -U postgres UTM5

Установка системы

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

/usr/local/etc/rc.d/utm5_core.sh start

Внимание: Под FreeBSD может появиться ошибка вида: /usr/ libexec/ld-elf.so.1: Shared object “libc.so.4” not found. В этом случае понадобится установить библиотеки compat4x.

Solaris

На сервер должна быть установлена операционная система SUN Solaris 9 либо 10 на плат-форме SPARC. Требования к вебсерверу и базе данных аналогичны Linux и FreeBSD.

Для установки необходимо выполнить команды:

gzip -d utm-5-solaris9-sparc-demo.gz pkgadd -d utm-5-solaris9-sparc

Для создания первоначальной базы данных выполните команды.

Для MySQL.

mysqladmin create UTM5

mysql UTM5 < /netup/utm5/UTM5_MYSQL.sql

Для Postgresql.

createdb -U postgres UTM5

psql -f /netup/utm5/UTM5_PG.sql -U postgres UTM5

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

/usr/local/etc/rc.d/utm5_core.sh start

Windows

Запустите программу установки UTM UTM5Setup.exe.

Установка системы

После загрузки инсталлятора появится окно выбора языка для установки.

Описание системы Основные функции системы


либо компоненты уже были установлены ранее, уберите соответствующие галочки и нажмите «Next».

При обновлении UTM с предыдущего выпуска программы до более новой сборки или версии не требуется переустанавливать сервер баз данных MySQL. Поэтому в этом окне следует убрать галочку напротив MySQL, говоря, чтобы осталась текущая установка MySQL. Однако при обновлении до более новой версии UTM может измениться структура базы данных. Поэтому далее, когда программа установки спросит о том, нужно ли обновлять структуру базы данных, необходимо ответить утвердительно.

Если компонент «Java Virtual Machine» был выбран для установки, запустится его инсталлятор.

Описание системы Основные функции системы


сервера Apache. Нажмите «Next».

Описание системы Основные функции системы


d

Для установки и удаления службы utm5_core нужно запустить utm5_ core. exe c опциями -install или -uninstall соответственно:

C:\Program Files\NetUP\UTM5>utm5_core.exe --uninstall

Successfully deleted utm5_core service

C:\Program Files\NetUP\UTM5>utm5_core.exe --install

Successfully created utm5_core service

Активация лицензионного ключа

Для активации лицензионного ключа необходимо выполнить команду под Linux/FreeBSD/Solaris:

mysql UTM5 < reg.sql

В случае использования операционный системы Windows инсталляционный пакет автома-тически запросит путь к директории где находится файл reg.sql.

Запуск интерфейса администратора

На рабочей станции администратора необходимо установить пакет Sun Java 2 (), а затем запустить приложение UTM_Admin.jar. По умолчанию логин init и пароль init. После входа в систему рекомендуется изменить пароль для системных пользователей. После смены пароля на системного пользователя web, также укажите его в файле /netup/utm5/web5.cfg.

Установка системы

Для входа в виртуальный кабинет пользователя необходимо запустить интернет-браузер (например, Internet Explorer, Opera, Netscape Navigator, Konqueror) и набрать в адресной строке URL https:// your.server / cgi-bin / utm5/aaa5.

Перенос данных из предыдущих версий UTM, либо из других баз данных

Для осуществления переноса данных об учетных записях пользователей, тарифах, списаниях служит утилита

/netup/utm5/to_utm.pl

Утилита написана на языке perl и поставляется в исходном коде. Благодаря этому имеется возможность перенести дан-

Установка системы
Описание системы Основные функции системы


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

Предварительная настройка системы Настройка валют

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

Зайдите в раздел (Тарификация | Валюта). Нажмите кнопку «Обновить». Появится список доступных валют.

Быстрый старт

Описание системы Основные функции системы
ка.

Описание системы Основные функции системы


адреса и маски сетей для входящего трафика, нажмите «ОК». После добавления всех подклассов нажмите кнопку «ОК» в окне «Добавление класса трафика».

Повторите указанную последовательность действий и создайте классы трафика «Исходящий» с идентификатором «20» и «Локальный» с идентификатором «1000».

Настройка услуги ІР-трафика

Зайдите в раздел (Тарификация | Услуги). Нажмите кнопку «Обновить». Появится список существующих услуг.

Описание системы Основные функции системы


«Передача IP-трафика». Отметьте галочку «Только для тарифного плана», если создаваемая услуга в дальнейшем будет частью пакета (тарифного плана). Кроме того, можно добавить комментарий, введя его в соответствующем поле. Нажмите кнопку «Продолжить».

Появится окно с дополнительными параметрами услуги. Введите размер периодической составляющей стоимости услуги и выберите способ её списания (в начале или в конце расчётного периода, либо плавное снятие в течение всего расчёт-

Описание системы Основные функции системы


трафика».

В появившемся окне «Добавление предоплаченных единиц» выберите класс предоплаченного трафика и введите количество в байтах. Нажмите кнопку «OK».

Нажмите кнопку «OK» в окне «Добавление услуги IP-трафика». Если услуга не предназначалась для тарифного плана, то

Быстрый старт

Описание системы Основные функции системы


персональную информацию и нажмите «Применить». В нижней части окна появятся дополнительные вкладки.

Описание системы Основные функции системы


активной. Нажмите на эту кнопку.

В появившемся списке услуг, которые включены в тарифный план, выберите соответствующую услугу передачи IP-трафика и нажмите кнопку «Подключить услугу».

В появившемся окне «Сервисная связка» выберите даты начала и окончания подключения пользователя к услуге и нажмите кнопку добавить над списком IP-групп. Введите IP-адрес и маску сети, которые следует привязать к пользователю. Нажмите кнопку «OK» сначала в окне «Добавление IP-группы», а потом, после добавления всех IP-адресов, в окне «Сервисная связка».

Нажмите кнопку «OK» для закрытия списка услуг в тарифном плане.

Нажмите кнопку «OK» ниже вкладок в окне «Добавление пользователя». Новый пользователь с установленными тарифным планом и параметрами будет создан.

Быстрый старт

Далее необходимо проконтролировать появление трафика в разделе «Отчёты».

Работа с учётными записями пользователей Пользователи и группы

В сводном списке пользователей содержится основная информация о клиентах: полное имя, логин в системе, идентификатор пользователя, основной лицевой счёт, идентификатор расчётного периода, статус блокировки клиента и баланс его лицевого счёта.

Создание учётной записи пользователя

Создание новой учетной записи клиента осуществляется при помощи диалогового окна добавления пользователя. Обязательной информацией являются логин и пароль пользователя. При создании новой учётной записи пароль генерируется автоматически, но есть возможность его изменения. Одновременно с учётной записью, для пользователя заводится основной лицевой счёт.

Описание системы Основные функции системы


учётная запись системного администратора; web - учётная запись, под которой программа пользовательского интерфейса осуществляет доступ к системе; radius - учётная запись, под которой входит в систему сервер RADIUS.

Как и обычных пользователей, системных пользователей можно объединять в группы. Для каждой группы системных пользователей настраивается политика безопасности. Политика безопасности - это набор прав на исполнение системных функций. С точки зрения политик безопасности, можно выделить следующие типовые группы системных пользователей: администраторы (полные права), кассиры (пополнение лицевых счетов пользователей), бухгалтеры (доступ к отчётам системы) и другие.

Если системный пользователь входит в состав нескольких системных групп, то действует правило добавления: пользователь имеет суммарные привилегии всех групп, членом которых он является.

Создание системной учётной записи

При создании системной учётной записи обязательными параметрами являются логин и пароль. Можно указать IP-адрес компьютера или подсеть, из которой разрешается доступ пользователю. Создаваемую учётную запись можно сразу включить в одну или несколько системных групп.

Описание системы Основные функции системы


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

Подключение услуг

Подключенная услуга - это «сервисная связка». При подключении услуги создается запись в таблице service_links и в со-

ответствии с типом услуги записи в таблицах periodic_ser-vice_links, iptraffic_service_links, hotspot_service_ links, dialup_service_links, once_service_links. Если услуга не разового типа, то также создается запись в таблице

periodic_service_links.

Удаление услуги

Для того чтобы удалить услугу, необходимо произвести следующие действия.

1. Отключить все подключения этой услуги ко всем лицевым счетам.

2. В разделе (Тарификация | Услуги) выбрать нужную услугу (она должна иметь статус «обычная услуга») и нажать кнопку «Удалить».

Разовые услуги

Стоимость разовой услуги списывается с лицевого счёта абонента единовременно при оказании услуги.

Описание системы Основные функции системы
Тарификация

Описание системы Основные функции системы


трафика В настройках услуги передачи IP-трафика в свойствах услуги указываются стоимость её периодической составляющей, количество предоплаченного трафика и стоимость трафика сверх предоплаченного. В стоимости трафика, составляющего превышение предоплаченных единиц, можно указать несколько диапазонов с различной стоимостью. Сначала добавляется граница с размером 0 и указывается стоимость - это стоимость трафика после исчерпания предоплаченного. После этого можно указать другую границу для того же класса трафика, например, 104 857 600 байт, которая будет указывать на стоимость трафика, потребленного после использования предоплаченного трафика плюс 104 857 600 байт.

Описание системы Основные функции системы


трафика» необходимо классы трафика объединить в группу. При этом средства будут списываться только за тот класс трафика, которого пользователь потребил больше.

Описание системы Основные функции системы


килобайт, M - мегабайт, G - гигабайт.

Чтобы данные обозначения корректно обработались системой, необходимо отметить галочку “HS”. Например, если в поле «Количество» ввести следующую строку:

1G 100M 100К

То система пересчитает данную строку в байты по следующей формуле:

1 * (1024Л3) + 100 * (1024л2) + 100 * 1024 = 1178701824 байт.

При этом количество байт в килобайте будет выбрано из параметра bytes_in_kbyte в разделе настройки. По умолчанию в килобайте 1024 байт. Соответственно в мегабайте 1024 во второй степени и в гигабайте 1024 в третьей степени.

При подключении услуги данного типа к лицевому счёту пользователя необходимо указать IP-адреса, назначенные пользователю (IP-группы). По ним будет происходить соотнесение трафика и пользователя при тарификации потока NetFlow.

Описание системы Основные функции системы


группы указаны логин и пароль, то эти данные будут автоматически переданы серверу RADIUS и по ним будет возможно установление VPN-соединения. В случае, если указано поле «Разрешённые CID», то при подключении пользователя по VPN либо Dial-up это значение будет сравниваться с атрибутом RADIUS Calling-Station-Id (31). Обычно в этом атрибуте записывается адрес вызывающей станции (компьютера клиента). В случае VPN это может быть IP-адрес, в случае PPPoE это может быть MAC-адрес, в случае Dial-up это может быть телефонный номер вызывающего абонента.

Ответственность за заполнение этого поля полностью лежит на сервере доступа. Если не будет найдено точного совпадения между значением, указанным в поле «Разрешённые CID» и тем, что указано в радиус атрибуте Calling-Station-Id, то авторизация не пройдёт и пользователь не сможет воспользоваться услугой.

Более подробную информацию о настройке серверов доступа можно найти в документации «Модуль коммутируемых и VPN-соединений».

При подключении услуги данного типа к лицевому счёту пользователя можно указать, каким образом списывать средства за периодическую составляющую услуги, а так же какой объем предоплаченного трафика предоставлять. Управление осуществляется галочками: ППТ - пересчитывать предоплаченный трафик и ПАП - пересчитывать абонентскую плату.

Примеры

1. Если не отмечены обе галочки, то за оставшееся время в текущем учетном периоде будет списан полный объем абонентской платы и предоставлен полный объем предоплаченного трафика. Например, услугу с периодической составляющей в 10 у. е. и 100 МБ предоплаченного трафика подключаем 15-го числа, при этом учетный период длится с 1-го числа по 1-е число. В этом случае с пользователя будет списано 10 у. е. и будет предоставлено 100 МБ трафика.

Тарификация

2. Если не отмечена галочка ППТ, а галочка ПАП отмечена, то за оставшееся время в текущем учетном периоде будет списана часть абонентской платы пропорционально оставшемуся времени и предоставлен полный объем предоплаченного трафика. Например, услугу с периодической составляющей в 10 у. е. и 100 МБ предоплаченного трафика подключаем 15го числа, при этом учетный период длится с 1го числа по 1е число (длительность месяца 30 дней). В этом случае с пользователя будет списано 5 у. е. и будет предоставлено 100 МБ трафика.

3. Если не отмечена галочка ПАП, а галочка ППТ отмечена, то за оставшееся время в текущем учетном периоде будет списан полный объем абонентской платы и предоставлен объем пре-

доплаченного трафика пропорционально оставшемуся времени. Например, услугу с периодической составляющей в 10 у. е. и 100 МБ предоплаченного трафика подключаем 15-го числа, при этом учетный период длится с 1-го числа по 1-е число (длительность месяца 30 дней). В этом случае с пользователя будет списано 10 у. е. и будет предоставлено 50 МБ трафика.

4. Если отмечены обе галочки, то за оставшееся время в текущем учетном периоде будет списана часть абонентской платы пропорционально оставшемуся времени и предоставлен объем предоплаченного трафика пропорционально оставшемуся времени. Например, услугу с периодической составляющей в 10 у. е. и 100 МБ предоплаченного трафика подключаем 15-го числа, при этом учетный период длится с 1-го числа по 1-е число (длительность месяца 30 дней). В этом случае с пользователя будет списано 5 у. е. и будет предоставлено 50 МБ трафика.

Аналогично галочки действуют при блокировках.

Классы трафика

Тарификация

Весь трафик, прошедший в сторону клиента или от него, разделяется на классы. Набор признаков, по которым происходит объединение записей о трафике в классы, задается при помощи определённых правил. Признаки, по которым можно объединять записи о трафике в классы, - это любые поля в записи NetFlow версии 5: принадлежность IP-адреса источника или получателя какой-либо сети, порт источника или получателя, автономная система источника или получателя, сетевой протокол, следующий маршрутизатор, TOS, TCP-флаги, интерфейс маршрутизатора, через который проходит пакет. Помимо этого запись о трафике можно отнести к тому или иному классу в зависимости от времени суток и дня недели.

Описание системы Основные функции системы


трафика, как правило, достаточно завести три класса: «Входящий», «Исходящий» и «Локальный» трафик. Входящий трафик определяется как трафик из сети, составляющей всё множество IP-адресов (сеть 0.0.0.0 маска 0.0.0.0), в локальную сеть (например, сеть 10.0.0.0 маска 255.255.255.0). Исходящий трафик определяется как трафик от IP-адресов локальной сети в сеть 0.0.0.0/0.0.0.0. Для исключения учёта локального трафика как интернет-трафика следует создать класс трафика «Локальный», определяемый как трафик из локальной сети в эту же сеть. Для раздельного учёта трафика по другим признакам необходимо создавать класс трафика с указанием признака, по которому необходимо классифицировать трафик. В каждом классе можно указывать неограниченное количество правил для отбора записей о трафике. Эти правила называются подклассами.

Описание системы Основные функции системы


либо классу определяется классификатором путём перебора «совместимости» записи о трафике с правилами, указанными в классах, начиная с класса трафика с максимальным идентификатором (id). Трафик маркируется первым совпавшим классом. Таким образом, классы трафика нужно размещать под такими номерами, чтобы идентификатор класса трафика, являющегося подмножеством другого класса трафика, был больше идентификатора последнего.

Например, используя приведенные выше обозначения, запись о трафике «от IP 10.0.0.5 к IP 10.0.0.10» попадает как под правила класса трафика «Входящий» (класс трафика 10), так и под правила классов трафика «Исходящий» (класс трафика 20) и «Локальный» (класс трафика 1000). Чтобы эта запись правильно обрабатывалась классификатором, классы нужно

Тарификация

расположить в порядке: «Входящий», «Исходящий», «Локальный». В этом случае запись о трафике будет помечена как класс трафика 1000 («Локальный» трафик).

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

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

Пример работы классов трафика

В системе присутствует абонент с IP-адресом 10.0.0.10. При этом данный абонент осуществил закачку 50 МБ с сайта www. netup.ru (IP-адрес сайта 195.161.112.6).

Ниже приводится последовательность действия системы для определения класса трафика.

Тарификация

1. Проверяется совпадение с классом трафика с наибольшим идентификатором. Идентификатор класса трафика: 1000. Название класса: «Локальный». Направление из сети 10.0.0.0/255.0.0.0 в сеть 10.0.0.0/255.0.0.0.

2. Трафик с адреса 195.161.112.6 к адресу 10.0.0.10 не попадает под данные условия. Следовательно, система проверяет совпадение со следующим по убыванию идентификатора классом трафика. Идентификатор класса трафика: 20 Название класса: «Исходящий». Направление из сети 10.0.0.0/255.0.0.0 в сеть 0.0.0.0/0.0.0.0.

3. Трафик с адреса 195.161.112.6 к адресу 10.0.0.10 не попадает под данные условия. Следовательно, система проверяет сов-

падение со следующим по убыванию идентификатора классом трафика. Идентификатор класса трафика: 10. Название класса: «Входящий». Направление из сети 0.0.0.0/0.0.0.0 в сеть 10.0.0.0/255.0.0.0. Трафик с адреса 195.161.112.6 к адресу 10.0.0.10 попадает под данные условия. На этом система заканчивает поиск класса трафика и маркирует данный трафик классом 10.

Соотнесение трафика на пользователей

После определения класса трафика производится определение пользователя, для которого будет тарифицирован данный трафик. Определение производится по IP-адресам, указанным в прикреплённой к пользователю услуге «Передача IP-трафика». Если к пользователю прикреплена группа IP-адресов, то соотнесение будет происходить для всей группы.

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

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

Тарификация

Например, к пользователям А и Б подключена услуга «Передача IP-трафика». К пользователю А прикреплён IP-адрес 10.0.0.10 (маска сети - 255.255.255.255), а к пользователю Б - IP-сеть 10.1.20.0 (маска сети - 255.255.255.0). В UTM поступила следующая информация от коллектора:

ІР-адрес

источника
ІР-адрес

получателя
Объём трафика
195.161.112.6 10.0.0.10 10МБ
195.161.112.6 10.1.20.34 15МБ
10.0.0.10 10.1.20.1 20МБ
10.1.20.1 10.0.0.10 30МБ
Основываясь на этих данных, UTM припишет и тарифицирует 10 МБ входящего трафика для пользователя А (строка

1), 15 МБ входящего трафика для пользователя Б (строка 2), 20 МБ входящего трафика для пользователя А (строка 3) и 30 МБ входящего трафика для пользователя Б.

Агрегация трафика

Для более экономного использования ресурсов базы данных производится процесс агрегирования поступающих записей по протоколу NetFlow ?. 5. Агрегирование производится по полям «Сервисная связка» (slink_id), «IP-адрес» (ipid), «Класс трафика» (tclass), «Идентификатор расчётного периода» (discount_period_id). Запись в базу данных агрегированного трафика происходит периодически через количество секунд указанное в настройках в поле traffic_agregation_interval. Если в течение указанного времени придёт два пакета, у которых параметры slink_id, ipid, tclass, discount_period_id совпадают, то они будут объединены в одну запись. В итоге в базе данных в таблице discount_transactions_iptraffic_ all будет одна запись, а не две.

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

Тарификация

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

1. Дождаться, когда истечёт интервал агрегации (по умолчанию время traffic_agregation_interval равно 15 минутам).

2. Дождаться, когда стоимость агрегированного трафика превысит барьер агрегации (по умолчанию aggregation_todisc_ barrier равен 5 условным единицам).

3. Дождаться, когда баланс лицевого счёта перейдет через лимит либо 0. В этом случае произойдет сброс агрегированного трафика и произойдет списание средств.

Примеры тарификации трафика

1. Пусть в системе существуют три класса трафика с идентификаторами 10 («Входящий»), 20 («Исходящий») и 1000 («Локальный»). Так же создана услуга IP-трафик, согласно которой стоимость трафика от 0 до 100 МБ (104857600 байт) по 1 у. е./ МБ, от 100 МБ до 1000 МБ (1048576000 байт) по 0.9 у. е./МБ и выше по 0.07 у. е./МБ.

Если пользователь в течение одного расчётного периода скачал меньше 100 МБ «Входящего» трафика, то стоимость составит 1 у. е. за каждый мегабайт.

Если пользователь в течение одного расчётного периода скачал больше 100 МБ, но меньше 1000 МБ «Входящего» трафика, то стоимость составит 1 у. е. за каждый мегабайт от 0 до 100 МБ и по 0.9 у. е. за каждый мегабайт свыше 100 МБ.

Если пользователь в течение одного расчётного периода скачал больше 1000 МБ «Входящего» трафика, то стоимость составит 1 у. е. за каждый мегабайт от 0 до 100 МБ, по 0.9 у. е. за каждый мегабайт от 100 до 1000 МБ и по 0.07 у. е. за каждый мегабайт свыше 1000 МБ.

Итоговый отчет при потреблении более 1000 МБ «Входящего» IP-трафика будет выглядеть следующим образом:

Тарификация

Описание системы Основные функции системы


100 у. е. Стоимость превышения - 1 у. е. за мегабайт. Неизрасходованный трафик не переносится на следующий расчетный период.

В данном случае периодическая стоимость услуги выставляется 100 у. е. В границах по трафику прописываются две записи. Первая - граница 0, стоимость 0. Вторая - 104 857 600 байт - стоимость 1.

Количество предоплаченного трафика равно нулю.

Описание системы Основные функции системы


100 у. е. Стоимость превышения - 1 у. е. за мегабайт. Неизрасходованный трафик переносится на следующий расчетный период.

Стоимость услуги выставляется 100 у. е., предоплаченные единицы (для входящего трафика) - 104 857 600. В границы заносится одна запись: граница - 0 байт, стоимость - 1 у. е.

Группы IP-адресов

Описание системы Основные функции системы


адресов, присвоенных пользователям, реализовано в системе в виде списка групп IP. В списке указываются сеть, присвоенная пользователю (IP-адрес и маска сети), и логин.

Временные диапазоны

Для настройки зависимости стоимости услуг от времени суток или дней недели используются временные диапазоны.

Описание системы Основные функции системы
Тарификация

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

Описание системы Основные функции системы


адресов на сервере доступа. Более подробная информация по настройке серверов доступа приведена в документации «Модуль коммутируемых и VPN-соединений».

Примеры

1. Стоимость услуги с 00 часов 00 минут до 08 часов 00 минут каждого дня составляет 10 р. за час. Стоимость услуги с 08 часов 00 минут до 23 часов 59 минут каждого дня составляет 20 р. за час.

Тарификация

В системе заводятся два временных диапазона - с 00:00 до 07:59, все дни недели - «Ночной» и с 08:00 до 23:59, все дни недели - «Дневной». При добавлении услуги периодическая стоимость выставляется 0, и добавляются две позиции: временной диапазон «Ночной» со стоимостью 10 р. и временной диапазон «Дневной» со стоимостью 20 р.

2. Ночной неограниченный доступ. Стоимость услуги - 500 р. в месяц.

Периодическая стоимость услуги выставляется 500 р. Выставляется стоимость временного диапазона «Ночной», равная нулю. Диапазон «Дневной» не добавляется. В этом случае днем авторизация пользователя будет невозможна.

Тарификация IP-трафика при динамическом распределении IP-адресов

В случае если IP-адреса абонентам распределяются из пула IP-адресов, то в этом случае применяется особая схема настройки биллинговой системы.

Необходимо настроить пулы IP-адресов либо в биллинговой системе либо на сервере доступа. Описание настройки пулов на сервере доступа Cisco можно посмотреть в разделе «Модуль коммутируемых и VPN-соединений». В биллинговой системе пулы настраиваются в разделе «Настройки» - «IP-пулы».

После настройки пулов необходимо создать тарифный план с услугами «Передача IP-трафика» и «Коммутируемый доступ». В настройках услуги «Коммутируемый доступ» необходимо указать стоимость соединения 0 у.е./час, а так же указать наименование существующего пула IP-адресов. Во всех услугах должна быть отмечена галочка «Подключать по умолчанию».

Описание системы Основные функции системы


трафика» можно указать любой IP-адрес из неиспользуемой сети (например, сетей 172.16.0.0, 10.0.0.0, 192.168.0.0).

При авторизации абонента на сервере доступа будет использоваться логин и пароль из настроек услуги «Коммутируемый доступ». При успешной авторизации сервер доступа устано-

вит соединение и произведет динамическую выдачу абоненту IP-адреса из пула. Этот адрес будет динамически привязан к услуге «Передача IP-трафика» данного абонента. Таким образом, биллинговая система всегда содержит актуальную информацию о том, какой IP-адрес используется в данный момент абонентом и может корректно соотносить по абонентам приходящую с сервера доступа статистику.

Расчётные периоды

Расчётный период - это период времени, в течение которого производится удержание средств с лицевых счетов пользователей за периодические услуги. Каждый пользователь, лицевой счёт, услуга и тарифный план имеют свои расчётные периоды.

Стандартные расчётные периоды: ежедневный, еженедельный, ежемесячный, ежеквартальный, ежегодный, период с фиксированным числом дней.

Ведение общего справочника расчётных периодов позволяет вести расчеты со всеми либо группами абонентов в одно и то же время, например, с первого по первое число каждого месяца.

Тарификация

При закрытии расчётного периода осуществляется подведение итогов: пересчёт абонентской платы и предоплаченного трафика с учётом блокировок, перенос неистраченного предоплаченного трафика на следующий расчётный период, выписка счетов. При закрытии производится продление расчётного периода без участия оператора. Например, если имеется расчётный период с длительность 1 месяц и производится его закрытие 1 сентября 2004 года, то данный период будет автоматически продлен до 1 октября 2004 года и так далее.

Описание системы Основные функции системы


трафика» это будут позиции, соответствующие суммарной стоимости переданного объёма информации за весь расчётный период), ещё и позицию, соответствующую периодической составляющей услуги на следующий расчётный период (абонентская плата за следующий расчётный период). При такой схеме работы система также генерирует счёт на оплату и при подключении услуги к лицевому счёту пользователя, такой счёт будет содержать единственную позицию - периодическую составляющую подключаемой услуги (абонентскую плату). Вышеописанная схема выставления счетов работает только при выполнении следующих условий: пользователь работает по предоплате и подключаемая услуга имеет в качестве значения параметра «Метод снятия денег» - «В начале расчётного периода», то есть в счета на оплату включается абонентская плата за следующий расчётный период только при выполнении вышеуказанных условий.

Для того чтобы регламентировать работу с пользователем по схеме предоплаты, необходимо в окне редактирования пользователя в закладке «Основные параметры» выставить галочку «Работа по предоплате».

Налоговые ставки

Налоговые ставки задаются в разделе редактирования данных абонента. Имеется возможность задать ставку налога на добавленную стоимость (НДС) и налога с продаж (НСП). Стоимость всех услуг указывается без НДС и НСП. При списаниях за услуги так же будет вычислена и списана сумма налогов.

Описание системы Основные функции системы


100 у. е. Ставка НДС указана 18 %, ставка НСП - 0 %. Со счёта абонента за эту услугу будет списано (100*1.18) * 1.00 = 118 у. е., из которых 18 у. е. составляют налоги.

Тарификация

2. Стоимость разовой услуги -100 у. е. Ставка НДС указана 0 %, ставка НСП - 0 %. Со счёта абонента за эту услугу будет списано (100*1.0) * 1.0 = 100 у. е., из которых налоги составляют 0 у. е.

Валюты

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

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

Описание системы Основные функции системы


это набор определённых телефонных направлений.

Описание системы Основные функции системы


адреса в услуге «Передача IP-трафика».

Несовместимые тарифные планы система также может переключать, но услуги, которых нет в тарифном плане следующего учётного периода, будут удалены.

Услуги группируются посредством родительской услуги. В этом случае можно выделить 3 группы услуг.

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

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

3. Услуги, имеющие родителя и находящиеся в составе тарифного плана.

Описание системы Основные функции системы


2, в состав которого входит услуга Б. Для того, чтобы произошёл корректный перенос всех параметров подключенной услуги А, необходимо, чтобы обе услуги А и Б имели общую родительскую услугу В, как показано на рисунке.

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

Краткое описание таблиц базы данных, отвечающих за тарификацию

service_links

id - сквозной идентификатор услуги, появляется также в таблицах *_service_link.

user_id - идентификатор пользователя из таблицы users.

account_id - идентификатор лицевого счёта пользователя из таблицы accounts.

service_id - идентификатор услуги.

is_deleted - если услуга отключается от пользователя, то is_ deleted устанавливается в ненулевое значение.

periodic_service_links

is_blocked - битовая маска, характеризующая блокировку.

discount_period_id - идентификатор расчётного периода.

Тарификация

discounted_in_curr_period - сколько было списано со счёта за эту услугу в текущем расчётном периоде.

start_date - дата начала предоставления услуги. В момент наступления start_date is_planned переводится в 0.

is_planned - пока услуга находится в планируемом состоянии, средства за неё списываться не будут. Услуга является планируемой, если значение в этом поле равно нулю.

need_del - услуга требует удаления. При наступлении даты большей, чем expire_date поле need_del устанавливается в 1.

Любая периодическая услуга имеет расчётный период (dis-count_period), при закрытии которого проверяется поле need_del. Если need_del не равно нулю, то услуга отключается от лицевого счёта пользователя.

iptraffic_service_links

ip_group_id - идентификатор группы IP-адресов. downloaded_id - идентификатор в таблице downloaded. downloaded

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

downloaded_id - идентификатор из iptraffic_service_ links.

tclass_id - идентификатор класса трафика.

qnt - количество скачанного трафика в байтах.

old_prepay - количество предоплаченного трафика, который был перенесён из предыдущего расчётного периода.

ip_groups

Тарификация

ip_group_id - идентификатор группы IP-адресов. Допускается наличие нескольких записей с одинаковым ip_group_id.

ip - IP-адрес.

mask - маска подсети.

uname - имя пользователя.

upass - пароль. mac - MAC-адрес.

discount_periods

Информация обо всех расчётных периодах, зарегистрированных в системе, находится в базе данных в этой таблице.

id - идентификатор расчётного периода.

start_date - начало расчётного периода в формате UNIX timestamp.

end_date - дата окончания расчётного периода.

periodic_type - тип расчётного периода. Используется при вычислении длительности следующего расчётного периода. Возможные следующие значения: 1 - ежедневный расчётный период, 2 - еженедельный, 3 - ежемесячный, 4 - ежеквартальный, 5 - ежегодный, 0x100000 - фиксированное количество дней.

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

is_expired - устанавливается не ноль, когда end_date больше, чем текущее время.

Тарификация

Платежи Поддержка нескольких валют

АСР NetUP UTM поддерживает работу с любым количеством валют. Курсы валют указываются, по умолчанию, по отношению к российскому рублю. Более подробно смотрите в разделе (Тарификация | Валюты).

Персональные настройки валюты абонента

АСР NetUP UTM предоставляет провайдеру возможность настройки валюты и её коэффициента для каждого абонента в отдельности.

Закреплённая валюта

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

NetUP UTM поддерживает смену в любой момент времени закреплённой за абонентом валюты на любую другую, зарегистрированную в системе. В результате смены валюты все счета на оплату услуг будут отображаться во вновь выбранной валюте, не зависимо от того, были ли они сгенерированы системой до момента смены валюты или же после.

По умолчанию закреплённая валюта абонента есть российский рубль.

Платежи

Смена закрепленной валюты производится администратором или оператором АСР NetUP UTM через центр управления. Для этого необходимо во вкладке «Дополнительно» окна детализации пользователя выбрать из списка «Основная валюта» необходимую валюту, затем сохранить выбор путем нажатия кнопки «Сохранить» на панели управления этой вкладки.

Персональный коэффициент валюты

Персональный коэффициент валюты - персональная настройка абонента, регламентирующая процент увеличения или уменьшения суммы оплаты услуг провайдера абонентом при внесении платежа на основании счета, в валюте, отличной от закреплённой. Смена персонального коэффициента производится администратором или оператором АСР NetUP UTM через центр управления. Для этого необходимо во вкладке «Дополнительно» окна детализации пользователя выставить значение, от 0 до 100, и знак, «+» или «-», процента, затем сохранить значение путем нажатия кнопки «Сохранить» на панели управления этой вкладки.

Пример

Закрепленная валюта - 840, доллар США (USD); персональный коэффициент +10%; оплата на основании счёта за услугу стоимостью 300.00 российских рублей; курс USD - 29,9441; ввод платежа осуществляется в российских рублях.

Исходя из начальных условий, счёт выставлен на сумму 10.02USD. Счёт выглядит следующим образом.

Плателхпдо: , ИНН

Ватт: $40 • USDfUSA Dollar), Курс: Курс ЦБ Р4 на день оплаты
# То* ар Цена Кол-во Ед Сулша
1 Подключение^) 10.02 1.000 10.02
Сулила 10.02
Сулила налогов 0.00

Итого 10.02

Платежи

После выбора данного счета в качестве основания платежа, диалог «Внести платеж» содержит следующие данные:

Описание системы Основные функции системы


10%, тогда при оплате этого же счёта в рублях абоненту пришлось бы заплатить не 330.00 рублей, а 270.00 рублей, при этом на счёт абонента поступили бы средства в размере 300.00 рублей. Таким образом, провайдер оплачивает часть стоимости услуги в размере 10% за свой счет.

Платежи

Ввод платежей

Платежи в системе могут вводиться несколькими способами, а именно:

• автоматический ввод платежей на лицевой счет абонента при оплате абонентом услуг провайдера через расчётную систему «Рапида»;

• автоматический ввод платежей на лицевой счёт абонента из стороннего программного обеспечения;

• ручной ввод платежа администратором системы (оператором) посредством центра управления UTM.

Оплата через систему «Рапида»

Абонент пополняет свой лицевой счёт посредством платёжной системы «Рапида», например, через кассу в супермаркете. Расчётная система Рапида после приема информации от абонента (идентификационные данные абонента, сумма платежа, основание платежа и т. п.), для краткости - ИПА (Информация о Платеже Абонента), оповещает систему о факте ввода платежа абонентом посредством сообщения, содержащего ИПА в виде файла. Система разбирает сообщение и вносит на счёт абонента сумму платежа, указанную в сообщении. После внесения платежа на счёт система уведомляет абонента о приёме платежа, путём отправки сообщения на адрес электронной почты.

Для предоставления провайдером возможности внесения платежей через платёжную систему «Рапида» для своих абонентов, он должен заключить договор с системным интегратором, предоставляющим техническое подключение к системе «Рапида».

Платежи

Схема взаимодействия между участниками операции ввода платежа отображена на рисунке.

Технические детали взаимодействия АСР NetUP UTM с платёжной системой «Рапида» смотрите в разделе «Приём платежей в АСР NetUP UTM через платёжную систему «Рапида».

Ввод платежа посредством стороннего ПО

В АСР NetUP UTM предусмотрена возможность ввода платежа на счёт абонента, исходя из данных, находящихся в стороннем ПО - программное обеспечение и автоматизированные системы, не имеющие отношения к UTM. Такой способ ввода платежей осуществляется на базе модуля ввода платежей через расчётную систему «Рапида». Для ввода платежа стороннее ПО должно иметь возможность генерировать файлы с информацией о платеже, структура которых в точности совпадает со структурой сообщений от расчётной системы «Рапида». Разница между этим методом и методом ввода платежей через расчётную систему «Рапида» состоит в том, что сообщение (файл), содержащее ИПА, генерируется не системой «Рапида», а именно сторонним ПО. Для доступа АСР NetUP UTM к этому сообщению достаточно его поместить в системную папку, из которой модуль ввода платежей через расчётную систему «Рапида» получает доступ к сообщениям о платежах от «Рапида».

Описание системы Основные функции системы


выбрать абонента из списка пользователей и выбрать операцию «Внести платёж».

Второй вариант - выбрать операцию «Внести платёж» в окне детализации информации по пользователю (абоненту). Нажатие кнопки «Внести платёж» инициирует вызов диалога «Внести платёж».

Описание системы Основные функции системы


сумма платежа;

• Валюта - валюта ввода платежа;

• Дата платежа - дата ввода платежа, по умолчанию - текущая дата;

• Коммент. для админ. - комментарий о платеже для администратора системы;

• Коммент. для пользов. - комментарий о платеже для абонента системы;

• Метод платежа - метод ввода средств на счет абонента, по умолчанию - Оплата наличными;

Платежи

• Номер плат. документа - номер платёжного документа - номер внешнего (не системного) платёжного документа, являющегося основание ввода платежа, например, номер счёта выписанного из какой-либо бухгалтерской программы или выписанного какой-либо организацией;

• Платеж по счёту - внутренний номер счёта (номер счёта внутри системы), по которому производится оплата. Если счёт выбран, то он является основанием платежа.

Флаг «Turn on met» означает, что интернет должен быть включен для пользователя, если это позволяет его баланс после проведения платежа. Если галочка «Turn on inet» не отмечена, то статус интернета для пользователя меняться не будет. Значение этого флага по умолчанию может быть задано в конфигурационном файле utm5admin.cfg, находящемся в текущей директории, при помощи параметра payment_inet_switch. Параметр может принимать значения on (галочка отмечена по умолчанию) и off (галочка не отмечена по умолчанию).

Ввод платежа без основания

Ввод платежа без основания соответствует пополнению счёта абонента. Для ввода платежа достаточно ввести сумму платежа, указать дату платежа и указать метод платежа «Оплата наличными», метод не обязательно должен быть таковым.

Ввод платежа на основании счёта

Для ввода платежа на основании внутреннего счёта системы, который генерируется по окончании расчётного периода, закреплённого за абонентом, достаточно выбрать счёт из списка неоплаченных счетов, выставленных абоненту в диалоге «Счета». Диалоговое окно вызывается путём нажатия кнопки «Выбрать» в строке «Платёж по счету».

Описание системы Основные функции системы


жа) необходимо в поле «Метод платежа» выбрать «Кредит» и в поле «Истекает» выбрать дату, до которой этот платеж должен быть погашен. С момента внесения платежа пользо-вателю открывается кредит на указанную сумму. Если за указанный промежуток времени пользователь внес обещанные средства, то кредит снимается с пометкой «успешно за-крыт». В этом случае оператор связи может позволить пользователю и в дальнейшем вно-сить обещанные платежи т.к. у него положительная кредитная история. В случае если деньги не были внесены, то кредит закрывается со статусом «неуспешно закрыт». В даль-нейшем оператор связи может запретить этому пользователю вносить обещанные плате-жи.

Откат платежа

В АСР NetUP UTM реализована функция отката платежа. Операция отката платежа производится администратором или оператором АСР NetUP UTM через центр управления.

Операция осуществляется в отчёте по платежам (Отчёты | Платежи) в главном окне приложения или в окне детализации пользователя. Далее необходимо сформировать отчёт за выбранный период времени, выбрать в таблице нужный платёж и вызвать всплывающее меню нажатием правой кнопки мыши. В меню необходимо выбрать пункт «Откат». Наиболее простая навигация по платежам абонента осуществляется через окно детализации пользователя, так как в нем в отчете по платежам отображается информация о платежах в пользу конкретного абонента.

После применения процедуры отката платежа, с лицевого счёта абонента снимется сумма равная фактической сумме платежа, поступившей на счёт абонента (см. пример в подразделе «Персональные настройки валюты абонента»).

Отчёты

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

Основной отчёт

Основной отчёт (оборотная ведомость) суммирует списания с лицевых счетов пользователей за оказание различных услуг за заданный промежуток времени.

В основной отчёт входят следующие данные:

• номер лицевого счёта;

• входящий остаток;

• сумма списаний за разовые услуги;

• сумма списаний за периодические услуги;

• сумма списаний за услугу передачи IP-трафика;

• сумма списаний за услугу хотспот;

• сумма списаний за услугу коммутируемого доступа;

• сумма списаний за услугу телефонии;

• сумма налогов;

• общая сумма с учётом налогов;

• сумма осуществлённых платежей;

• исходящий остаток.

Отчёты

Отчёт по трафику

Отчёт по трафику суммирует объёмы переданного IP-трафика для каждого лицевого счёта и класса трафика за заданный промежуток времени.

В отчёт по трафику входят следующие данные:

• номер лицевого счёта;

• логин;

• количество байт в килобайте;

• класс трафика;

• объём переданного трафика в мегабайтах;

• цена за единицу переданного трафика (стоимость 1 МБ трафика);

• сумма списания с лицевого счёта пользователя.

Графический отчёт по трафику

Графический отчёт по трафику служит для визуального представления предыдущего отчёта и представляет собой график зависимости потребления различных классов трафика всеми пользователями от времени за выбранный период. Так же в этом отчете доступна информация по максимальной, минимальной и средней скорости потребления IP-трафика.

Детальный отчёт по трафику

Детальный отчёт по трафику строится на базе исходных данных о переданном трафике и включает детализированную информацию:

• дата;

• идентификатор прикреплённой услуги;

• номер лицевого счёта;

• класс трафика;

• IP-адрес и порт источника;

• IP-адрес и порт получателя;

• количество переданных пакетов;

• количество переданных байт;

Отчёты

• флаги TCP;

• протокол;

• TOS.

За большие промежутки времени накапливается огромное количество статистики, поэтому создание такого детализированного отчёта может занять длительное время. Для создания отчёта за большой промежуток времени мы рекомендуем воспользоваться опцией «Отчёт по трафику».

Отчёт по услугам

Отчёт по услугам суммирует информацию о списаниях с лицевых счетов пользователей за оказание конкретных услуг за определённый промежуток времени. В отчёте присутствуют:

• номер лицевого счёта;

• дата списания средств с лицевого счёта;

• расчётный период;

• тип услуги;

• название услуги;

• объём оказанной услуги;

• комментарий к списанию.

Отчёты по модемным сессиям, VPN и телефонии

Отчёт по модемным сессиям и сессиям VPN базируется на статистике сервера RADIUS и суммирует данные о сессиях коммутируемого доступа. В отчёте присутствуют:

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

• номер лицевого счёта;

• дата и время начала сессии;

• дата и время окончания сессии;

• выданный IP-адрес;

• вызывающий абонент;

• вызываемый абонент;

• порт сервера доступа (NAS);

• идентификатор сессии на сервере доступа;

• логин;

Отчёты

• IP-адрес сервера доступа;

• статус сессии;

• объём входящего трафика;

• объём исходящего трафика;

• длительность сессии;

• объём списанных средств.

Отчёт по телефонии аналогичен отчёту по модемным сессиям, но содержит дополнительную информацию:

Отчёты

84

¦ телефонная зона;

¦ направление звонка.

Отчёт по платежам

Отчёт по платежам представляет информацию о зачисленных на лицевые счета пользователей средствах за заданный промежуток времени. В отчёте присутствует следующая информация:

• номер лицевого счёта;

• фактическая дата платежа;

• дата введения платежа в систему;

• сумма платежа в валюте системы;

• сумма платежа в валюте оплаты;

• валюта оплаты;

• метод осуществления платежа;

• лицо, внёсшее платеж;

• комментарий к платежу.

Так же в отчете по платежам имеется возможность отменить любой платеж.

Отчёт по блокировкам

Блокировка - это приостановка предоставления одной или нескольких услуг. Блокировка может применяться к клиенту (блокируются все счета клиента), к счёту (блокируются все ус-

Описание системы Основные функции системы


значение». В списке можно как редактировать существующие параметры, так и добавлять новые.

Описание доступных параметров:

raw_max_fi1es

Максимальное количество файлов с детальной информацией о переданном трафике. Если число файлов больше, чем указано, то старые файлы удаляются. Значение по умолчанию: 10.

raw_max_size

Максимальный размер каждого файла с детальной статистикой о переданном трафике. Значение по умолчанию: 100 000 000 байт (около 100 МБ).

raw_prefix

Путь к файлам с детальной статистикой о прокачанном трафике. Значение по умолчанию: /netup/utm5/db.

Настройки

В этой директории создаются и хранятся файлы со статистикой. В каждом файле хранятся данные о трафике за период, предшествующий цифре в названии файла (дата в формате Unix timestamp). Названия файлов имеют вид iptraffic_raw_ unixtimestamp.dbs.

Примеры названий файлов:

iptraffic_raw_107 0957 880.dbs iptraffic_raw_107 0957930.dbs iptraffic_raw_107 0957 980.dbs

raw_c1eanup_s1eep

Периодичность удаления файлов с устаревшей детальной статистикой в микросекундах. Значение по умолчанию: 1800000000 (30 минут). В случае если по истечению заданного периода времени количество файлов с детальной статистикой превышает значение, указанное в переменной raw_max_ files, то самые старые файлы удаляются до тех пор, пока общее количество файлов с детальной статистикой не станет raw_max_files.

smtp_relay

IP-адреса сервера SMTP, через который производится отсылка уведомлений и почтовых сообщений. Значение по умолчанию: 127.0.0.1.

smtp_port

Порт сервера SMTP. Значение по умолчанию: 2 5. smtp_fqdn

Полное доменное имя при посылке почтовых сообщений. Значение по умолчанию: localhost.

smtp_sender

Адрес отправителя при посылке почтовых сообщений. Значение по умолчанию: admin@localhost.

smtp_subject

Тема сообщения при посылке почтовых сообщений. admin_email

Почтовый адрес администратора, на который будут высылаться сообщения об ошибках.

invoice_subject

Тема сообщения со счетом на оплату.

invoice_text

Настройки

87

Настройки

Описание системы Основные функции системы


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

notification_message

Текст уведомления, который будет отсылаться на e-mail пользователя при переходе баланса через границы указанные в notification_borders. В сообщении можно использовать следующие переменные:

FULL_NAME - полное имя абонента;

ACC0UNT_ID - идентификатор основного лицевого счёта абонента;

BALANCE - баланс основного лицевого счёта абонента на момент подготовки сообщения;

DATE - дата на момент подготовки сообщения;

EMAIL - адрес e-mail, на который производится отсылка.

notification_message_subject

Тема уведомления, которое будет отсылаться на e-mail пользователя при переходе баланса через границы, указанные в no-

tification_borders.

notification_message_from

Имя отправителя уведомления. Будет записано в поле From: сообщения.

discount_barrier

При плавном списании платы за периодические услуги со счёта не будут списываться суммы меньше чем discountjbarrier, чтобы не накапливалась арифметическая ошибка.

traffic_agregation_interval

Как часто производить сброс агрегированного трафика в базу. Значение по умолчанию - 900 секунд.

aggregation_todisc_barrier

Сбрасывать агрегированный трафик в базу, если агрегированного трафика больше, чем на указанную в этом поле сумму. Значение по умолчанию: 5.

flow_discounts_per_period

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

flow_discount_random_coef

Настройки

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

web_session_timeout

Указывает максимальное время, в течение которого хранится уникальный ключ сессии (SID) веб-интерфейса пользователя.

hotspot_refresh_timeout

Сколько времени действительна хотспот сессия, считая от последнего обновления страницы пользователем.

traffic_mult_coef

Коэффициент, на который умножается собранный трафик (поправочный коэффициент). Если не указывать эту строку, то коэффициент будет равен 1.

block_recalc_abon

Переменная задаёт порядок перерасчёта абонентской платы (периодической составляющей стоимости услуги) при автоматической блокировке лицевого счёта или пользователя. Может принимать следующие значения: 0 (абонентская плата должна быть списана даже за те промежутки времени, когда пользователь был заблокирован) и 1 (абонентская плата списывается только за время, когда пользователь не находится в состоянии системной блокировки).

block_recalc_prepaid

Настройки

Переменная задаёт порядок перерасчёта предоплаченных единиц (мегабайты трафика или минуты в случае услуг коммутируемого доступа, хотспот и телефонии) при автоматической блокировке лицевого счёта или пользователя. Может принимать следующие значения: 0 (предоплаченные единицы предоставляются в полном объёме, несмотря на блокировки пользователя) и 1 (производится перерасчёт предоплаченных единиц пропорционально тому времени, в течение которого пользователь не находился в состоянии системной блокировки).

radius_max_session_age

Переменная задаёт максимальный возраст открытых сессий, которые будут восстановле-ны из базы данных при старте сервера RADIUS. Сессия остаётся открытой в том случае, если

был получен пакет RADIUS Accounting-Start, но по какой-либо причине не пришёл пакет Accounting-Stop. Значение переменной задаётся в секундах. При значении 0 загрузка открытых сессий производиться не будет. Значение по умолчанию - 86400 (24 часа).

Конфигурационный файл ядра

Конфигурационный файл ядра биллинговой системы доступен по пути /netup/utm5/utm5.cfg. Файл состоит из строк вида

параметр=значение

В некоторых случаях возможно указание нескольких строк с одинаковым значением «параметр». Строки, начинающиеся с символа «#», считаются комментарием.

Список возможных параметров.

database_type

Тип базы данных. Возможны значения: mysql, postgres. database

Название базы данных. По умолчанию: UTM5. database_host

Адрес хоста, на котором располагается база данных. Значение по умолчанию: localhost.

database_login

Логин для доступа к базе данных.

database_password

Пароль для доступа к базе данных.

dbcount

Настройки

91

Количество соединений открываемых ядром биллинговой системы к базе данных. Значение по умолчанию 20.

urfa_bind_host

Адрес, на котором будет слушать сервер URFA. По умолчанию: 0.0.0.0 (на всех интерфейсах). Может быть несколько записей.

urfa_lib_file

Файл динамического модуля (.so), который будет загружен при старте ядра. Значения по умолчанию нет. Может быть указано несколько файлов. Путь может быть как абсолютным (/netup/utm5/lib/liburfa-utils.so), так и относительным (./liburfa/liburfa-utils.so, liburfa/liburfa-utils.so). В случае, если путь либо абсолютен, либо начинается с ./, перегрузка из центра управления UTM будет происходить корректно. Иначе будет загружен именно тот код, который был на момент запуска ядра.

nfbuffer_port

Порт, на котором ядро принимает поток NetFlow. По умолчанию: 9996.

nfbuffer_host

Хост, на котором будет прослушиваться UDP-порт для принятия NetFlow-потока. По умолчанию: 0.0.0.0 (все интерфейсы).

Настройки

log_level=3

Уровень протоколирования ядра. Число от 0 до 3, большие и меньшие значения будут сброшены до ближайшей границы. Значение по умолчанию - 1. Чем выше уровень, тем больше сообщений попадает в основной поток логов. Уровень 3 - всё, 2 - всё без информационных сообщений, 1 - всё без замечаний, 0 - только ошибки.

log_file_main

Файл записи журнала уровня информации, замечаний, предупреждений, ошибок.

1og_fi1e_debug

Файл записи журнала отладочного уровня.

1og_fi1e_critica1

Файл записи журнала уровня критических ошибок и сбоев.

Конфигурационный файл веб-интерфейса пользователя

Конфигурационный файл для веб-интерфейса пользователя называется /netup/utm5/web5.cfg. В данном файле записываются параметры доступа веб-интерфейса к ядру биллинговой системы.

Список возможных параметров. core_host

Адрес хоста, на котором запущено ядро биллинговой системы. Значение по умолчанию: 127.0.0.1.

web_1ogin

Логин системного пользователя в биллинговой системе. Значение по умолчанию: web.

Настройки

web_password

Пароль системного пользователя в биллинговой системе. Значение по умолчанию: web.

Список брандмауэров

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

Правила файрволов

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

При задании команд для включения и выключения доступа к ресурсам сети можно использовать следующие переменные:

UID - идентификатор пользователя в системе;

RULE_ID - идентификатор пользователя плюс 5000;

UIP - IP-адрес (сеть) пользователя без маски, например, 10.0.0.1;

UMASK - маска подсети через точку, например, 255.255.255.255;

UBITS - маска в виде битов, например, 32 (означает то же, что и 255.255.255.255);

Настройки

UINVERTMASK - инвертированная маска (используется при работе с маршрутизаторами Cisco), например, 0.255.255.255.

Пример для FreeBSD. Включение:

/sbin/ipfw add RULE_ID allow ip from UIP to any

Выключение:

/sbin/ipfw delete RULE_ID

Следует обратить внимание на то, что выполнение команд происходит не при их добавлении в список, а при включении и выключении интернета для пользователя.

Более полную информацию по настройке файрволла можно найти в разделе «Использование файрволлов».

Список IP-зон

Справочник «Список IP-зон» ведётся для удобства работы с большими многосегментными и распределёнными сетями и содержит информацию о различных сегментах сети: сеть, маску и шлюз. IP-зону могут составлять один или несколько сегментов.

Список домов

Справочник подключенных домов ведётся для удобства работы с сетями, объединяющими несколько зданий. Запись о доме содержит его адрес и идентификатор IP-зоны.

Список банков

Данные из справочника банков предназначены для удобства заполнения форм. Например, при создании новых клиентов в системе, нет необходимости вводить данные банка клиента каждый раз. Достаточно один раз внести данные в список банков или импортировать списки из файла формата XML. С идентификатором банка в системе связаны следующие данные: БИК, название, адрес и корреспондентский счет банка.

Настройки

Настройка и отладка работы с почтовым сервером

В интерфейсе администратора в разделе (Настройки | Список параметров) укажите корректно следующие параметры (через символ «=» указаны значения для примера):

smtp_relay = 10.0.0.1 smtp port = 25

smtp_fqdn = host.example.org

smtp_sender = smtp_subject = Message from UTM5 admin_email = notification_borders = 5 notification_borders = 3 notification_borders = 0

notification_message = Уважаемый абонент, FULL_NAME! На Вашем лицевом счёте номер ACCOUNT_ID возник дефицит средств в размере BALANCE. Дата сообщения:

DATE Данное сообщение послано на EMAIL. С уважением, Провайдер.

notification_message_subject = Уведомление notification_message_from = Отдел биллинга

Адреса электронной почты абонента, на которые производится рассылка уведомлений, можно задать в свойствах пользователя, в разделе «Контакты».

Для проверки корректности отсылки сообщений пользователям можно искусственно провести баланс пользователя через одну из указанных границ - 5, 3 либо 0 условных единиц. Это можно сделать внеся платеж на сумму 10 у. е. и затем оказав разовую услугу на 6, 8 либо 11 условных единиц. В этом случае баланс пользователя будет изменен с 10 у. е. до 4,2 либо у.е.

При этом можно проверить прохождение пакетов к почтовому серверу командой:

tcpdump -ni eth0 port 25

Настройки

где eth0 - интерфейс, через который осуществляется соединение с почтовым сервером.

Должны появиться пакеты примерно следующего вида:

12:45:34.738410 127.0.0.1.57021 > 127.0.0.1.25: . ack

1 win 35840 (DF)

12:45:34.875100 127.0.0.1.25 > 127.0.0.1.57021: P 1:37(36) ack 1 win 35840 (DF)

12:45:34.875187 127.0.0.1.57021 > 127.0.0.1.25:

P 1:16(15) ack 37 win 35840 (DF)

12:45:34.875249 127.0.0.1.25 > 127.0.0.1.57021:

P 37:59(22) ack 16 win 35840 (DF)

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

Ещё один способ инициировать отправку почтовых сообщений пользователям - выполнить отсылку счёта на адрес электронной почты абонента. Для этого необходимо оказать пользователю разовую услугу, в результате чего будет подготовлен счёт в разделе (Отчёты | Счета). Необходимо выделить подготовленный счёт и нажать кнопку «Отослать на email». При этом в файле журнала ядра UTM должна появиться запись:

?Debug : Jul 21 12:54:04 BusLogic: call SmtpLogger:: smtp

При прослушивании трафика должны появляться пакеты, отправленные на почтовый сервер.

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

Настройки

Использование файрволов

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

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

Использование файрволов

Кроме того, файрвол используется для трансляции сетевых адресов (NAT, Network Address Translation). Технология NAT сводится к подмене в заголовках IP-пакетов приватного IP-адреса источника данных, IP-адресом внешнего интерфейса маршрутизатора. Использование технологии NAT позволяет машинам, не имеющим реальных IP-адресов, практически полноценно работать в сети интернет.

Система NetUP UTM поддерживает работу с удалёнными брандмауэрами для блокирования доступа клиентов к ресурсам сети. Блокирование может производиться как автоматически (например, при появлении задолженности на счету клиента), так и вручную (самим клиентом или администратором). Состояние физической блокировки доступа в сеть определяется статусом интернета для данного пользователя. Статус может принимать два значения: включен или выключен.

Настройка политики безопасности файрвола в ОС Linux с ipchains и iptables

Запрет прохождения пакетов пользователям по умолчанию в ОС Linux осуществляется настройкой политики безопасности (policy) в цепочке forward в файрволах ipchains или iptables.

Настройка политики безопасности в ipchains:

ipchains -P forward DENY

Настройка политики безопасности в iptables

iptables -P FORWARD DROP

Проверка правил файрвола в ipchains или iptables осуществляется выполнением команд.

В ipchains:

[root@rh73 /]# ipchains -nL Chain input (policy ACCEPT):

Chain forward (policy DENY):

Chain output (policy ACCEPT):

[root@rh73 /]# _

В iptables:

Использование файрволов

[root@rh73 /]# iptables -nL Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy DROP) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination [root@rh73 /]# _

Включение поддержки файрвола в ОС FreeBSD

По умолчанию ОС FreeBSD устанавливается с ядром GENERIC, в которое не включена поддержка файрвола. Для использования файрвола в ОС FreeBSD, ядро системы следует пересобрать с опцией

options IPFIREWALL

Файрвол ipfw в ОС FreeBSD также может быть загружен в форме модуля. С этой целью в файл /boot/loader.conf следует добавить строку

ipfw_load="YES"

Для включения запуска файрвола при загрузке ОС FreeBSD в конфигурационный файл /etc/rc.conf следует добавить строку

firewall_enable="YES"

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

fwcmd="/sbin/ipfw -q"

${fwcmd} -f flush

${fwcmd} add 100 allow ip from any to me ${fwcmd} add 200 allow ip from me to any

При загрузке правил ipfw, последнее правило, по умолчанию, запрещает прохождение пакетов через маршрутизатор.

Просмотр загруженных правил файрвола осуществляется командой.

server# ipfw show

Использование файрволов

00100 8 736 allow ip from any to me 00200 8 596 allow ip from me to any 65535 0 0 deny ip from any to any server# _

Настройка файрвола на маршрутизаторе Cisco

Управление доступом в сеть осуществляется динамическими access-list. Необходимо создать два листа - для прохождения пакетов к клиенту и от него. Для этого перейдите в режим конфигурирования маршрутизатора командой.

configure terminal

Затем выполните команды.

access-list 105 dynamic testl permit ip any any access-list 106 dynamic test2 permit ip any any

При этом будут созданы два динамических access-list, в которые будут добавляться правила для разрешения выхода пользователей в сеть. Если необходимо определенному адресу разрешить доступ в сеть статически, то необходимо выполнить команду.

access-list 105 permit ip host 10.0.0.10 any access-list 106 permit ip any host 10.0.0.10

Важно! Добавьте разрешение для адреса хоста, с которого осуществляется администрирование маршрутизатора. В противном случае возможна потеря управления.

Остальные правила будут добавляться в лист динамически в зависимости от статуса Интернета у абонента. По умолчанию доступ для всех абонентов закрыт.

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

interface Ethernet 1/0 ip access-group 105 in ip access-group 106 out

Использование файрволов

Добавление и удаление правил на маршрутизаторе осуществляется по протоколу rsh, поэтому необходимо разрешить выполнять эти действия на маршрутизаторе командами:

CiscoRouter#conf t

CiscoRouter(config)#username netup privilege 8 password 0 plain text password

CiscoRouter(config)#ip rcmd rsh-enable CiscoRouter(config)#no ip rcmd domain-lookup

CiscoRouter(config)#ip rcmd remote-host netup REMOTE_ IP_ADDRESS REMOTE_USER_NAME enable

CiscoRouter(config)#privilege exec level 8 access-template

CiscoRouter(config)#privilege exec level 8 clear access-template

REM0TE_IP_ADDRESS - IP-адрес сервера с запущенным utm5_ rfw.

REMOTE_USER_NAME - имя пользователя на сервере с utm5_rfw, от которого производится запуск сборщика. Имя по умолчанию - netup.

После настройки маршрутизатора сохраните конфигурацию командой write.

В интерфейсе администратора правила для включения интернета пользователю будут выглядеть следующим образом:

access-template 105 testl host UIP any access-template 106 test2 any host UIP

Правила для выключения:

clear access-template 105 testl host UIP any clear access-template 106 test2 any host UIP

Непосредственная отправка правил на маршрутизатор Cisco по протоколу rsh осуществляется модулем utm5_rfw. В конфигурационном файле rfw5.cfg обязательно должны быть указаны параметры:

Использование файрволов

firewall_type=cisco

cisco_ip=IP_ADDRESS

где IP_ADDRESS - IP-адрес маршрутизатора Cisco.

После этого произведите запуск utm5_rfw командой /netup/utm5/bin/utm5_rfw

Для проверки прохождения правил на маршрутизатор Cisco можно использовать команду

tcpdump -nXli eth0 -s 65000 port 514

Пример настройки Cisco при работе с Windows

CiscoRouter(config)#username Administrator privilege 8 password 0 plain text password

CiscoRouter(config)#ip subnet-zero

CiscoRouter(config)#no ip rcmd domain-lookup CiscoRouter(config)#ip rcmd rsh-enable

CiscoRouter(config)#ip rcmd remote-host Administrator REMOTE_IP_ADDRESS REMOTE_USER_NAME enable

В данном примере необходимо настроить запуск служб Windows таким образом, чтобы они работали от имени учётной записи Administrator (по умолчанию все службы Windows запускаются от имени учётной записи SYSTEM).

Использование NAT Использование NAT в ОС FreeBSD с ipfw

Для использования NAT в ОС FreeBSD необходимо пересобрать ядро системы с опцией IPDIVERT.

Для этого в конфигурационный файл нового ядра следует добавить строку.

options IPDIVERT

Трансляция сетевых адресов в ОС FreeBSD осуществляется посредством демона natd, который слушает порт 8668.

Использование файрволов

Для включения NAT при загрузке системы в конфигурационном файле /etc/rc.conf следует добавить строки.

natd_enable=«YES«

natd_interface=«rlO«

Указать на автоматический запуск демона natd при загрузке системы можно так же в файле /etc/rc.local. В него следует добавить строку.

/sbin/natd -n rlO

Проверить, запущен ли демон natd, можно выполнив команду.

server# ps ax | grep natd

145 ?? Is O:OO.51 /sbin/natd -n rlO

server# _

Проверить, слушает ли демон natd порт 8668, можно выполнив команду.

server# sockstat | grep 8668 root natd 145 3 div4 *:8668 *:* server# _

При трансляции сетевых адресов перенаправление пакетов на порт 8668 осуществляется посредством файрвола.

Для перенаправления всех пакетов на интерфейс, на IP-адрес которого транслируются сетевые адреса (NAT), следует выполнить команду.

ipfw add 50 divert natd ip from any to any via rlO

Если необходимо транслировать определенную сеть, например, 192.168.0.0/16, то необходимо выполнить команды.

ipfw add 50 divert natd ip from 192.168.0.0/16 to any via rlO

ipfw add 50 divert natd ip from any to me via rlO

Правила, осуществляющие перенаправление пакетов на natd, должны находиться в самом начале списка правил ipfw.

Использование файрволов

00050 0 0 divert 8668 ip from any to any via rl0 00200 8 736 allow ip from any to me 00300 8 596 allow ip from me to any 65535 0 0 deny ip from any to any

Для того чтобы правила, осуществляющие перенаправление пакетов на natd, выполнялись при загрузке системы, в конфигурационный файл /etc/rc.firewall необходимо добавить строки:

${fwcmd} add 50 divert 8668 ip from any to any via rl0

или

${fwcmd} add 50 divert natd ip from 192.168.0.0/16 to any via rl0

${fwcmd} add 50 divert natd ip from any to me via rl0

Строки, которые необходимо добавить в самое начало списка правил:

fwcmd="/sbin/ipfw -q"

${fwcmd} -f flush

${fwcmd} add 50 divert 8668 ip from any to any via rlO

${fwcmd} add 100 allow ip from any to me ${fwcmd} add 200 allow ip from me to any

В указанных выше примерах предполагается, что трансляция IP-адресов осуществляется на IP-адрес интерфейса rl0. Вместо него следует указать название интерфейса, на IP-адрес которого необходимо осуществлять NAT.

Для того чтобы посмотреть сетевые интерфейсы в системе, необходимо выполнить команду ifconfig.

Использование NAT в ОС Linux

Использование файрволов

Трансляция сетевых адресов в iptables осуществляется в таблице nat в цепочке POSTROUTING. Для того чтобы транслировать адреса сети 192.168.0.0/16 на IP-адрес интерфейса eth0 с IP-адресом 195.161.112.6, необходимо выполнить следующую команду.

iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o eth0 -j SNAT --to-source 195.161.112.6

где 192.168.0.0/16 - адрес локальной сети;

eth0 - внешний интерфейс с IP-адресом 195.161.112.6, на который осуществляется NAT.

Посмотреть список текущих правил iptables в таблице nat можно, выполнив команду.

[root@rh73 /]# iptables -t nat -nL Chain PREROUTING (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination

SNAT all -- 192.168.0.0/16 0.0.0.0/0 to:195.161.112.6

Использование файрволов

106

Chain OUTPUT (policy ACCEPT) target prot opt source destination [root@rh73 /]# _

Переход на другой файрвол в ОС Linux

Последовательность перехода в Linux с ipchains на iptables.

Необходимо отключить ipchains, чтобы предотвратить загрузку соответствующих модулей в будущем.

chkconfig --level 0123456 ipchains off

Необходимо остановить сервис ipchains.

service ipchains stop

Если ipchains загружен в форме модуля ядра Linux, его необходимо выгрузить.

rmmod ipchains

Включить iptables на автозагрузку.

chkconfig --level 235 iptables on

Активировать сервис iptables.

service iptables start

Переход с iptables на ipchains осуществляется аналогичным образом. После остановки iptables необходимо выгрузить все загруженные для его работы модули ядра Linux. Посмотреть, какие модули ядра загружены, можно, выполнив команду lsmod.

Некоторые модули ядра, которые используются для iptables.

[root@rh73 /]# lsmod | grep ip

iptable_nat

ip_conntrack

iptable_filter

ip_tables

[root@rh73 /]# _

Также следует проверить конфигурационный файл программы sudo, в нём должна быть записана строка на выполнение исполняемого файла файрвола, на который осуществляется переход.

nobody ALL= NOPASSWD: /sbin/iptables

Автосохранение правил файрвола в Linux при перезагрузке системы

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

Для ipchains в файле /etc/init.d/ipchains после строки

stop)

добавить запись

/sbin/ipchains-save > /etc/sysconfig/ipchains

Для iptables в файле /etc/init.d/iptables после строки

stop() {

добавить запись

Использование файрволов

/sbin/iptables-save > /etc/sysconfig/iptables

Добавление правил файрвола в центре управления

Добавление правил файрвола осуществляется в администраторском интерфейсе биллинговой системы UTM в закладке (Настройки | Правила файрволов).

Таблица отображает шаблоны команд, по которым строятся и выполняются конкретные команды при включении и выключении интернета пользователям.

Описание системы Основные функции системы


идентификатор пользователя в системе;

RULE_ID - идентификатор пользователя + 5000;

UIP - IP-адрес (сеть) пользователя без маски, например 10.0.0.1;

ULOGIN - логин пользователя из IP-группы;

UMASK - маска подсети через точку, например

255.255.255.255;

UBITS - маска подсети в виде битов, например 32;

UINVERTMASK - инвертированная маска (используется при работе с Cisco), например 0.255.255.255;

SLINK_ID - идентификатор сервисной связки услуги IP-трафика;

SPLINK_ID - идентификатор сервисной связки услуги IP-трафика + 10000.

Например, команды для добавления правил, разрешающих пользователю выход в интернет по любому протоколу и порту при использовании FreeBSD будут выглядеть так:

/sbin/ipfw add RULE_ID allow ip from UIP/UBITS to any /sbin/ipfw add RULE_ID allow ip from any to UIP/UBITS

Команда для удаления правил:

/sbin/ipfw delete RULE_ID

Использование файрволов

При использовании Linux с ipchains команды будут выглядеть примерно так:

Включение:

/sbin/ipchains -A forward -b -s UIP/UBITS -j ACCEPT

Выключение:

/sbin/ipchains -D forward -b -s UIP/UBITS -j ACCEPT

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

Полностью подготовленные для выполнения правила передаются на исполнение соответствующему модулю utm5_rfw. Количество зарегистрированных в ядре биллинговой системы модулей utm5_rfw не ограничено.

Описание системы Основные функции системы


v

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

utm5_rfw -f

Синхронизацию правил рекомендуется использовать при автоматическом запуске модуля при старте системы.

Файл конфигурации utm5_rfw

Файл состоит из строк вида параметр=значение

Строки, начинающиеся с символа «#», считаются комментарием.

Список возможных параметров: rfw_name

Имя модуля, по которому происходит идентификация модулей. Например, 127.0.0.1. Это же значение должно быть указано при добавлении записи в список брандмауэров. При включении или выключении интернета пользователям именно по этому полю происходит идентификация файрвола, на котором производить выполнение команд.

sudo_path

Путь к программе sudo. Например, /usr/bin/sudo. firewall_path

Путь к файрвол. Например, /sbin/ipfw. firewall_flush_cmd

Использование файрволов

Команда для очистки правил файрвола. Например, /sbin/ iptables -F.

core_host

Адрес хоста, на котором запущено ядро биллинговой системы. Значение по умолчанию: 127.0.0.1.

core_port

Порт, на котором запущено ядро биллинговой системы. Значение по умолчанию: 117 58.

rfw_login

Логин системного пользователя в биллинговой системе.

rfw_password

Использование файрволов

Описание системы Основные функции системы


адрес маршрутизатора фирмы Cisco, управление которым производится по протоколу rsh.

dont_fork

Если не указана данная опция либо значение не равно “yes”, то правила выполняются параллельно т.е. последующее правило применяется на файрволле не дожидаясь выполнения предыдущего. На некоторых типах файрволл, в частности для linux iptables, крайне рекомендуется указать данную опцию равную “yes”. При этом правила применяются на файрволле последовательно.

Включение интернета пользователям осуществляется через центр управления или через веб-интерфейс пользователя системы.

Работа с предоплаченными картами

Добавить, просмотреть или экспортировать информацию о предоплаченных картах можно в разделе «Карточки». Для удобства работы карточки объединяются в группы (пулы).

Вновь созданные карты добавляются в пул: новый или уже существующий. Чтобы добавить карточки в существующую группу, в окне «Добавление карты» нужно указать её номер. Если не существует пула с указанным номером, то такой пул автоматически создаётся, и в него добавляются карты.

Описание системы Основные функции системы


кода и срок действия карт. Информацию о созданных картах нельзя изменить или удалить. Пулы также не могут быть удалены.

Различаются два типа предоплаченных карт: карты с фиксированной датой истечения срока действия и карты с плавающей датой истечения срока действия.

Карты первого типа используются для регистрации пользователей в системе, которые смогут воспользоваться услугами провайдера до даты, указанной на карте. Для создания карт этого типа достаточно выставить значение поля «Использовать до» позднее текущей даты.

Работа с предоплаченными картами

Описание системы Основные функции системы


коде (пароле), сроке действия, валюте и дате активации (если карта уже активирована).

Информацию о предоплаченных картах можно экспортировать в файл формата XML, который имеет следующий формат:















id - идентификатор пула (карты); secret - пароль (пин-код) карты;

balance - номинал карты;

currency - идентификатор валюты, в которой выражен номинал карты;

expire_date - дата истечения срока действия карты в формате ДД.ММ.ГГГГ.

При создании карт имеется возможность указать (привязать к карте) тарифный план, услуги которого будут привязаны к основному лицевому счету пользователя при автоматической активации карты. При активации карты к основному лицевому счёту пользователя привязываются только услуги, относящиеся к типам «Hotspot», «Коммутируемый доступ» и «Телефония», если помимо этих типов услуг тарифный план содержит услуги других типов, то такие услуги не подключаются.

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

Описание системы Основные функции системы


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

Работа с предоплаченными картами

Описание системы Основные функции системы


на удаленном сервере, находящемся либо внутри локальной сети, либо вне её.

Интернет
Описание системы Основные функции системы
боты системы в рассмотренной конфигурации необходимо направить поток UDP-пакетов, содержащих информацию о трафике, на локальную машину на порт, «прослушиваемый» ядром системы. Порт UDP и хост для принятия данных о трафике задаются в конфигурационном файле /netup/utm5/ utm5.cfg. Если статистика собирается с локальной машины, то хостом для принятия данных следует указать 127.0.0.1.

Для настройки демона ndsad необходимо внести изменения в файл /netup/utm5/ndsad.cfg. Если поток NetFlow необходимо направить на локальную машину, то значение параметра ip должно быть равным 127.0.0.1, значение параметра port

— 9996.

Для правильной работы демона ndsad в файле конфигурации необходимо указать семейство интерфейсов, на которых нужно собирать информацию о трафике. Список интерфейсов можно узнать при помощи системной команды ifconfig. Интерфейсы, на которых необходимо собирать статистику, указываются с помощью параметра force. Нужно иметь в виду, что если вы не используете транслирование адресов (NAT) и включите сбор статистики с внешнего и внутреннего интерфейсов, то трафик на клиентов будет удваиваться, так как проходящие пакеты будут регистрироваться два раза: при входе в маршрутизатор и при выходе из него.

В ОС FreeBSD ndsad запускается командой:

/usr/local/etc/rc.d/ndsad.sh start

В ОС Linux ndsad запускается командой:

/etc/rc.d/init.d/ndsad start

В Windows NT-подобных системах ndsad работает в качестве системной службы. Для установки и удаления службы используются ключи командной строки --install и --uninstall соответственно. Служба устанавивается в автоматическом режиме, что обеспечит её запуск при старте компьютера.

C:\Program Files\NetUP\UTM5>ndsad.exe Successfully created ndsad service C:\Program Files\NetUP\UTM5>ndsad.exe

Successfully deleted ndsad service

NetUP Data Stream Accounting Daemon (ndsad)

install

Описание системы Основные функции системы


запросов к какому-нибудь ресурсу в сети с учетом того, что ping-запросы должны через интересующий нас интерфейс (тот, на котором собирает статистику ndsad);

• корректность работы демона ndsad. Для этого нужно убедиться в том, что UDP-пакеты с информацией о трафике передаются на локальную машину по указанному в настройках порту. Чтобы проверить это, выполните команду:

su# tcpdump -ni loO port 9996

При этом должно отобразиться примерно следующее:

12:40:51.958448 127. O . O.1.4675 > 127. O . O .1.9996 : udp 1464

12:4O:51.959O51 127.O.O.1.4675 > 127. O . O .1.9996: udp 4O8

12:4O :51.959O74 127. O.O.1.4675 > 127.O.O.1.9996: udp 648

Если этого не наблюдается, нужно проверить настройки демона ndsad (файл ndsad.cfg). Полное описание структуры файла ndsad.cfg приводится ниже.

После того, как данные о трафике появятся в детальном отчете по трафику, демон ndsad в связке с биллинговой системой готов к работе.

Получить последнюю версию ndsad можно на сайте проекта в Интернете - . При этом необходимо отметить, что данный коллектор так же доступен в виде исходных кодов, что позволяет при необходимо самостоятельно вносить изменения

Конфигурационный файл

В файле допустимы пустые строки. Весь остаток строки, идущий после символа # считается комментарием и игнорируется.

Синтаксис строк:

<слово> <значение>

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

«Семьей» устройств называются сетевые устройства, отличающиеся только индексом. Например, в семью eth входят устройства: ethO, ethl, eth12 и т. д.

Значением параметра может быть одно неразрывное слово (кроме параметров heap и hash). Если имеется несколько значений параметра (например, нужно обрабатывать несколько устройств), то параметр должен задаваться несколько раз:

force rlO force fxpO

Ключевые слова ip

Адрес назначения. По этому адресу (и порту) будет происходить отсылка статистики по трафику. Значение по умолчанию: ip 127. O . O .1.

NetUP Data Stream Accounting Daemon (ndsad)

19
Описание системы Основные функции системы


адресов, на которые это устройство настроено.

Пример для платформы Win32:

force \Device\NPF_{A07 05 0FE-62B3-40AF-B6D2-6587 01A5 6089}

ignore 192.168.1.1 force 192.168.0.1

dummy

Строка указывает на то, что все устройства из этой семьи не будут обрабатываться. См. также force. Указание в качестве семьи ключевого слова all приведёт к тому, что все устройства, не помеченные, как force, будут игнорироваться.

Пример: dummy eth. promise

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

Пример: promise exO.

filter

Фильтр для ограничения количества обрабатываемых пакетов. Формат фильтра аналогичен формату фильтров для tcp-dump (man tcpdump).

Пример: filter fxp0 not port 135

Пример: filter fxp0 net 10.0.0.0/24 and not port 135

hash

Размер хеша для семьи устройств. Это значение должно быть степенью двойки. Иначе использование памяти будет очень неэффективным. Значение по умолчанию: hash all 128.

Пример: hash lo 64.

heap

Размер буфера хранения. Такой максимальный объём памяти в байтах может быть занят, но не обязательно использован. В случае необходимости память берётся из этой кучи, а не у системы. Разумные размеры увеличивают быстродействие. Значение по умолчанию: heap 16384.

Пример: heap 65536.

dump

Насколько часто будет происходить запись информации о загрузке разных частей демона в журнал. Измеряется в секун-

NetUP Data Stream Accounting Daemon (ndsad)

NetUP Data Stream Accounting Daemon (ndsad)

дах. Указание значения 0 приведёт к тому, что записи не будут происходить. Статистику можно получить, послав программе сигнал SIGHUP. Значение по умолчанию: dump 0.

Пример: dump 5.

log

Файл, в который будет записываться журнал работы демона. Если значение не указано, то будет использован stderr (стандартный вывод для ошибок, обычно прямо на терминал). Значение по умолчанию: /netup/utm5/log/ndsad.log.

Пример:log /var/log/ndsad.log.

config

Изменить конфигурационный файл. Текущий файл после такой директивы не используется. Проверок на циклы нет, поэтому неправильное указание следующего файла может привести к тому, что программа зависнет. Значение по умолчанию:

config /netup/utm/ndsad.cfg.

Пример:config /usr/local/etc/ndsad.cfg.

bsd_div_port

Порт, на который необходимо производить перенаправление (копирование) трафика из ipfw методом divert (tee). Для использования данного функционала необходимо добавить следующее примерное правило в ipfw:

ipfw add 10 tee 21000 all from any to any

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

bsd_div_port 21000

Значение по умолчанию не предусмотрено. Данный функционал доступен только под ОС FreeBSD.

bsd_div_copy

В случае если правило в файрволл добавляется с использованием директивы divert вместо tee, то необходимо установить данную опцию равную значению yes. В противном случае пакеты не будут проходит.

ulog_group

Номер группы используемый при сборе статистики через интерфейс ULOG в ОС Linux при использовании файрвола iptables. Пример использования:

ulog_group 13

В этом примере указано использовать группу с номером 13. Соответственно правила в файрволл необходимо добавлять примерно следующей командой:

iptables -A OUTPUT -s 10.0.0.1 -d 10.0.0.2 -j ULOG --ulog-nlgroup 13

В случае если в лог-файле появляются ошибки вида “No buffer space available”, то необхо-димо увеличить системные сетевые буферы командой:

sysctl -w net/core/rmem_max=1048576 sysctl -w net/core/rmem_default=1048576

Значение по умолчанию для данной директивы не предусмотрено.

Список поддерживаемых семей устройств

Для ОС семейства BSD: vlan, bfe, tun, ng, nv, lo, dc, fxp, pcn,

rl, sf, sis, ste, tl, tx, vr, wb, xl, de, txp, vx, bge, em, gx, lge, nge, sk, ti, wx, cx, ed, el, ep, ie, is, le, ex, lnc, my, wi, an.

Для ОС семейства Linux: lo, eth, ppp.

NetUP Data Stream Accounting Daemon (ndsad)

23
Описание системы Основные функции системы


соединениями, которые имеют имена \Device\NPF_GenericDialupAdapter либо \Device\ NPF_GenericNdiswanAdapter.

get_xyz

NetFlow 5

Описание системы Основные функции системы


Accounting, Mikrotik, NSG, Revolution и передачи ее по протоколу Cisco NetFlow ?5 либо сохранения в файл. Запуск осуществляется командой:

/netup/utm5/bin/get_xyz

Ключи командной строки запуска:

-d - запустить в режиме демона

-l LOGFILE - выводить отладочную информацию в файл LOGFILE

-k - остановить запущенный процесс -h - помощь.

Конфигурационный файл расположен по следующему пути:

Универсальные сборщики статистики

Универсальные сборщики статистики

26

/netup/utm5/get_xyz.conf

Файл состоит из строк вида

параметр=значение

Строки, начинающиеся с символа «#», считаются комментарием.

Список возможных параметров: outfile=/tmp/traffic.log

Файл, в который будет сохраняться статистика. outhost=127.0.0.1

IP-адрес сервера, на который передается статистика по протоколу NetFlow ?. 5.

outport=9996

Порт, на который передается статистика по протоколу NetFlow ?.5.

loop=600

Интервал (в секундах), через который производить снятие статистики. Если этот параметр не указан, то статистика снимается один раз, после этого выполнение программы завершается.

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

host {

type=nsg

Тип маршрутизатора, с которого снимается статистика. Возможные значения:cisco, revolution, mikrotik, nsg.

ip=192.168.0.1

IP-адрес маршрутизатора.

port=23

TCP-порт маршрутизатора. timeout=5

Тайм-аут соединения.

login=root Логин пользователя.

password=foo Пароль пользователя.

}

Такую секцию необходимо создать для каждого маршрутизатора, с которого планируется собирать статистику.

Сбор статистики по протоколу IP-accounting с маршрутизатора Cisco


На сервере с биллинговой системой необходимо создать конфигурационный файл /netup/utm5/get_xyz .conf следующего содержания:

outhost = 127.О.О .1 outport=9996 loop=30 host {

type=cisco ip=10.1.2.99 port=514 login=root timeout=5

}

Универсальные сборщики статистики

Универсальные сборщики статистики

При этом на маршрутизаторе Cisco необходимо включить на нужном интерфейсе аккаунтинг командами.

CiscoRouter#conf t

CiscoRouter(config)# interface FastEthernet 0/0 CiscoRouter(config-if)#ip accounting

Разрешить машине с get_xyz забирать статистику.

CiscoRouter#conf t

CiscoRouter(config)#username netup privilege 8 password 0 plain text password

CiscoRouter(config)#ip rcmd rsh-enable CiscoRouter(config)#no ip rcmd domain-lookup

CiscoRouter(config)#ip rcmd remote-host netup REMOTE_ IP_ADDRESS REMOTE_USER_NAME enable 8

REMOTE_lP_ADDRESS - IP-адрес сервера с get_xyz.

REMOTE_USER_NAME - имя пользователя на сервере с get_xyz, от которого производится запуск сборщика.

CiscoRouter(config)#privilege exec level 8 show ip accounting checkpoint

CiscoRouter(config)#privilege exec level 1 show ip

CiscoRouter(config)#privilege exec level 8 clear ip accounting

CiscoRouter(config)#ip accounting-threshold 4294967295

После завершения настройки маршрутизатора Cisco произведите запуск сборщика командой.

/netup/utm5/bin/get_xyz -d

Проверьте, происходит ли забор статистики с маршрутизатора Cisco командой.

show ip accounting

Проверьте, появляется ли статистика в формате NetFlow ?.5 на указанном интерфейсе. Чтобы проверить это, выполните команду.

su# tcpdump -ni lo0 port 9996

udp

При этом должно отобразиться примерно следующее:

12:40:51.958448 127.0.0.1.4675 > 127.0.0.1.9996:

1464

12:40:51.959051 127.0.0.1.4675 > 127.0.0.1.9996: udp 408

12:40:51.959074 127.0.0.1.4675 > 127.0.0.1.9996: udp 648

Сбор статистики по протоколу IP-accounting с коллектора ipcad

На сервере с биллинговой системой необходимо создать конфигурационный файл /netup/utm5/get_xyz .conf следующего содержания:

outhost = 127.0.0.1 outport=9996 loop=30 host {

type=cisco ip=10.0.0.1

# IP-адрес сервера с установленным ipcad. port=514

login=root

password=root

timeout=5

}

На удаленном сервере необходимо установить пакет ipcad () и создать конфигурационный файл /usr/local/etc/ipcad.conf примерно следующего содержания:

interface fxp0; rsh enable;

rsh root@127.0.0.1 admin; rsh root@10.0.0.2 admin;

# IP-адрес сервера с get_xyz и логин пользователя, от которого производится запуск get_xyz

Универсальные сборщики статистики

29
Сбор статистики по протоколу IP-accounting с маршрутизатора Cisco


Accounting с ipcad будет передаваться утилите get_xyz, которая будет производить преобразование в формат Cisco NetFlow и экспортировать ее на локальный хост (127.0.0.1) порт 9996. Если всё настроено корректно, то на локальном сервере должны проходить UDP-пакеты на порт 9996. Проверить можно утилитой tcpdump:

su-2.05b# tcpdump -ni lo0 port 9996 tcpdump: listening on lo0

17:38:26.347689 127.0.0.1.2789 > 127.0.0.1.9996: udp 1464

17:38:26.550360 127.0.0.1.2789 > 127.0.0.1.9996: udp 1464

17:38:26.751455 127.0.0.1.2789 > 127.0.0.1.9996: udp 1464

17:38:26.952631 127.0.0.1.2789 > 127.0.0.1.9996: udp 1464

Сбор статистики по протоколу NetFlow с маршрутизатора Cisco

На маршрутизаторе Cisco необходимо включить на нужном интерфейсе NetFlow командами.

CiscoRouter# conf t

CiscoRouter(config)# interface FastEthernet 0/0 CiscoRouter(config-if)# ip route-cache flow

Затем указать адрес и порт сервера, на который производить отсылку пакетов Netflow:

CiscoRouter# conf t

CiscoRouter(config)# ip flow-export version 5

CiscoRouter(config)# ip flow-export destination 10.1.1.1 9996

Сбор статистики по протоколу NetFlow с маршрутизатора Cisco в случае использования NAT

Основная проблема при использовании NetFlow совместно с технологией преобразования IP-адресов NAT, заключается в том, что на внутреннем интерфейсе будет фиксироваться информация о переданном от клиента трафике, а на внешнем интерфейсе будет фиксиро-ваться трафик переданный из интернета на внешний IP-адрес маршрутизатора. Таким об-разом, в NetFlow-потоке будет информация о переданном трафике от клиента, но не будет фигурировать информация о данных переданных в сторону клиента.

Например, в рассмотренном ниже конфигурационном файле внутренняя сеть имеет IP-адреса 10.11.0.0 и маску подсети 255.255.0.0, а внешний интерфейс маршрутизатора имеет IP-адрес 10.1.0.1. При этом пользователь 10.11.0.6 пытается загрузить страницу с IP-адресом 195.161.112.6.

Интернет

I Ethernet 1/0

ІЛГ

Cisco 3620

Ниже приводится работающий конфигурационный файл маршрутизатора Cisco с комментариями:

Current configuration : 4013 bytes

!

version 12.3

service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption

hostname Router

Универсальные сборщики статистики

Сбор статистики по протоколу IP-accounting с маршрутизатора Cisco


start-marker boot-end-marker

!

ip subnet-zero

!

ip cef

Интерфейс, на который производится перенаправление пакетов после обратного преобразования. Таким образом, на данном интерфейсе будет проходить трафик с IP-адреса 195.161.112.6 на IP-адрес 10.11.0.6. Чтобы данный трафик экспортировался по NetFlow, указываем опцию ip route-cache flow.

!

interface LoopbackO ip address 192.168.O.1 2 55.255.255. O ip route-cache policy ip route-cache flow

Внешний интерфейс маршрутизатора. На данном интерфейсе проходит трафик с IP-адреса 195.161.112.6 на IP-адрес этого же интерфейса - 10.1.0.1. Что бы данный трафик экспортировался по NetFlow, указываем опцию ip route-cache flow.

Кроме того, на данном интерфейсе необходимо указать опцию ip policy route-map NETUP_MAP, чтобы пакеты после обратного преобразования направлялись на интерфейс Loopback O согласно правилам, указанным в route-map.

!

interface Ethernet1/O ip address 1O.1.O.1 255.255. O.O ip nat outside ip route-cache policy ip route-cache flow ip policy route-map NETUP_MAP

Внутренний интерфейс маршрутизатора. На данном интерфейсе проходит трафик с IP-адреса клиента 10.11.0.6 на IP-адрес 195.161.112.6. Чтобы данный трафик экспортировался по NetFlow, указываем опцию ip route-cache flow.

!

interface Ethernet1/1 ip address 10.11.0.1 255.255.0.0 ip nat inside ip route-cache policy ip route-cache flow

Опции, указывающие IP-адрес какого интерфейса использовать для преобразования, а также информация о версии NetFlow-потока и адресе сервера UTM.

!

ip nat inside source list 1 interface Ethernet1/0 overload

ip flow-export version 5

ip flow-export destination 10.1.0.5 9996 ip classless

ip route 0.0.0.0 0.0.0.0 10.1.0.5

Списки доступа. Первый список доступа (номер 1) используется для указания, какую сеть необходимо преобразовывать во внешний IP-адрес при работе NAT. Второй список доступа (номер 108) используется для указания в route-map.

!

access-list 1 permit 10.11.0.0 0.0.255.255 access-list 108 permit ip any 10.11.0.0 0.0.255.255

Правила, указывающие, что если пакет направляется в сеть, указанную в списке доступа 108 (в данном случае 10.11.0.0), перенаправлять на интерфейс Loopback 0. Таким образом, все пакеты с внешних IP-адресов, в частности с IP-адреса 195.161.112.6, после обратного преобразования по техноло-

Универсальные сборщики статистики

Универсальные сборщики статистики

34

гии NAT, попадут на интерфейс Loopback 0, где будут зафиксированы и информации о них появится в потоке NetFlow.

!

route-map NETUP_MAP permit 10 match ip address 108

set interface LoopbackO Ethernet1/1

!

End

В случае если информация о трафике, переданном в сторону клиента, не появляется в NetFlow проверьте следующие пункты:

1. Работает ли route-map. Для этого выполните на маршрутизаторе команду:

show route-map NETUP_MAP

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

2. Появляются ли пакеты в кэше NetFlow. Для этого сразу после получения клиентом информации из интернета выполните на маршрутизаторе команду:

show ip cache flow | include 195.161.112.6

При этом должна появиться информация о трафике примерно следующего вида:

Router#show ip cache flow | include 10.1.2.2

SrcIf SrcIPaddress

Pr SrcP DstP Pkts
DstIf DstIPaddress
Et1/0 195.161.112.6

06 0050 1093 3
Et1/1 10.11.0.6
Et1/1 10.11.0.6

06 1093 0050 5
Et1/0 195.161.112.6
Et1/0 195.161.112.6

06 0050 1093 2
Local 10.1.0.1
Srclf - интерфейс, с которого пришел пакет.
Dstlf - интерфейс, на который был направлен пакет. Если данное поле равно Null, то данная информация может не экспортироваться в NetFlow. Проверьте списки доступа.

Универсальный сборщик статистики utm5_unif

Если в импортируемом файле с данными по трафику не присутствуют IP-адреса, но присутствуют логины пользователей, то обработку таких данных можно осуществить при помощи программы utm5_unif.

Запуск осуществляется командой:

/netup/utm5/bin/utm5_unif

Ключи командной строки запуска:

-с - альтернативный путь к конфигурационному файлу

-s S0URCE_FILE - импортировать данные из файла SOURCE_ FILE

Конфигурационный файл расположен по следующему пути:

/netup/utm5/utm5_unif.conf

Файл состоит из строк вида

параметр=значение

Строки, начинающиеся с символа «#», считаются комментарием.

Список возможных параметров: core_host

Адрес хоста, на котором запущено ядро биллинговой системы. Значение по умолчанию: 127.0.0.1.

core_port

Порт, на котором запущено ядро биллинговой системы. Значение по умолчанию: 117 58.

Универсальные сборщики статистики

Универсальные сборщики статистики

core_login

Логин системного пользователя в биллинговой системе. core_password

Пароль системного пользователя в биллинговой системе. data_source

Тип данных в импортируемом файле. Для файла с данными об IP-трафике значение должно быть равно iptr.

Формат импортируемого файла должен быть следующим:

LOGIN BYTES TCLASS IP

LOGIN - логин, привязанный к услуге «IP-трафик». По данному полю происходит определение сервисной связки и, соответственно, определение стоимости трафика.

BYTES - количество переданных байт.

TCLASS - класс трафика.

IP - поле, указывающее IP-адрес, использованный при передаче данных. Данное поле используется только для отчётов, поэтому возможно указание значения 0.0.0.0 без ущерба для тарификации.

Пример

uniftest 1048576 10 10.10.10.10 test 10485760 20 0.0.0.0

Первая строка указывает на то, что пользователем с логином uniftest было передано 1048576 байт IP-трафика. При этом класс трафика равен 10 и использовался IP-адрес 10.10.10.10.

В случае если data_source=pbx, то производится импорт CDR-записей. При этом можно настроить формат импортируемого файла. Для этого необходимо определить следующие параметры:

3.

pbx_called_sid

Номер позиции в импортируемом файле, в которой находится запись о вызываемом номере. Значение по умолчанию 0.

pbx_calling_sid

Номер позиции в импортируемом файле, в которой находится запись о вызывающем номере. Значение по умолчанию 1.

pbx_duration

Номер позиции в импортируемом файле, в которой находится запись о длительности звонка. Значение по умолчанию 2.

pbx_session_id

Номер позиции в импортируемом файле, в которой находится запись о идентификаторе сессии. Значение по умолчанию pbx_delimiter

Символ-разделитель между полями. По умолчанию таким символом является точка с запятой - ;.

pbx_quote

Символ, в который заключены поля. По умолчанию таким символом является символ двойной кавычки - “.

Если сохранить указанные параметры по умолчанию, то формат файла должен быть следующим:

“9391000”,“5409652”,”100”,”0000122”

В результате разбора такой строки будут получены следующие значения:

Вызываемый номер - 9391000 Вызывающий номер -5409652

Универсальные сборщики статистики

Универсальные сборщики статистики

Длительность звонка-100 сек.

Идентификатор сессии - 122

Полученные в результате разбора исходного файла данные будут экспортированы в биллинговую систему по протоколу RADIUS. Для указания параметров экспорта необходимо определить следующие параметры в конфигурационном файле:

radius_dst_host

IP-адрес, на котором слушает поток utm5_radius. Значение по умолчанию 127.0.0.1

radius_secret

Секретное RADIUS-слово. Значение по умолчанию secret. radius_nas_name

Идентификатор сервера доступа. Это значение будет передано в атрибуте NAS-Identifier (32). Значение по умолчанию utm5_unif.

radius_port

Порт, на котором слушает поток utm5_radius. Значение по умолчанию 1813.

Для запуска обработки CDR-файла используйте команду: utm5_unif -c utm5_unif.cfg.pbx -s export_cdr.txt

Вспомогательные утилиты

Генератор статистики по протоколу NetFlow

Для эмулирования работы пользователей и экспорта статистики по протоколу NetFlow ?.5 используется утилита utm5_ flowgen, которая устанавливается по следующему пути: /net-up/utm5/bin/utm5_flowgen. В командной строке можно передать следующие параметры:

-h

IP-адрес хоста, на который пересылать сгенерированные NetFlow-пакеты. Значение по умолчанию - 127.0.0.1.



Порт, на который пересылать сгенерированные NetFlow-пакеты. Значение по умолчанию - 9996.



Количество NetFlow-пакетов. Значение по умолчанию -

Вспомогательные утилиты

65535.

-t

Период ожидания в микросекундах между посылками NetFlow-пакетов.

-s

IP-адрес, с которого был передан IP-трафик. Этот адрес записывается в поле srcaddr в генерируемых NetFlow-пакетах.

-d

IP-адрес, к которому был передан IP-трафик. Этот адрес записывается в поле dstaddr в генерируемых NetFlow-пакетах.

-b

Вспомогательные утилиты

140

Количество переданных байтов. Это значение записывается в поле dOctet в генерируемых NetFlow-пакетах.

Следующая команда генерирует один NetFlow-пакет с информацией о 1048576 байтах, переданных между адресами 10.0.0.1 и 10.0.0.2:

/netup/utm5/bin/utm5_flowgen -c 1 -s 10.0.0.1 -d 10.0.0.2 -b 1048576

Генератор статистики по протоколу RADIUS

Для эмулирования работы пользователей и экспорта статистики по протоколу RADIUS используется утилита utm5_rad-gen, которая устанавливается по следующему пути: /netup/ utm5/bin/utm5_radgen. В командной строке можно передать следующие параметры:



Порт, на который пересылать сгенерированные RADIUS-пакеты.

-h

IP-адрес, на который пересылать сгенерированные RADIUS-пакеты.

-s

Секретное слово для общения с RADIUS-сервером.



Код RADIUS-пакета. Значение по умолчанию - 1 (Access-Request).



Пароль пользователя в открытом виде. Данное значение будет передано с ID атрибута 2 (Password).

-a

Атрибуты и значения. Возможно указание нескольких атрибутов. Строка имеет следующий формат:

vendor_id:attr_id:is_digit:value

Поля разделены двоеточием. Первое поле указывает на идентификатор вендора. Значение по умолчанию - 0.

Второе поле указывает на идентификатор атрибута.

Третье поле используется для указания типа данных: цифровой либо строчный. Если значение 0, то данные передаются, как строка. Если значение 1, то данные передаются, как цифры (integer).

Четвёртое поле используется для передачи самого значения.

Примеры

1. Для посылки запроса на авторизацию (Access-request) необходимо выполнить следующую команду:

/netup/utm5/bin/utm5_radgen -h 127.0.0.1 -p 1812 -s secret -u password -a 0:1:0:username -a 0:32:0:local-host

Вспомогательные утилиты

При этом будет сгенерирован RADIUS-пакет с запросом на авторизацию для пользователя username с паролем password.

2. Для посылки запроса на аккаунтинг (Accounting-request) необходимо выполнить следующую команду:

/netup/utm5/bin/utm5_radgen -h 127.0.0.1 -p 1813 -s secret -a 0:1:0:username -a 0:32:0:localhost -a 0:40:1:1 -a 0 :44:0:sessionid1 -c 4

При этом будет сгенерирован RADIUS-пакет с запросом на ак-каунтинг для пользователя username. При этом будет указано, что осуществляется начало сессии (start). Идентификатор сессии sessionid1.

3. Для посылки запроса на аккаунтинг (Accounting-request) необходимо выполнить следующую команду:

/netup/utm5/bin/utm5_radgen -h 127.0.0.1 -p 1813 -s secret -a 0:1:0:username -a 0:32:0:localhost -a 0:40:1:2 -a 0:44:0:sessionid1 -a 0:46:1:100 -c 4

При этом будет сгенерирован RADIUS-пакет с запросом на ак-каунтинг для пользователя username. При этом будет указано, что осуществляется окончание сессии (stop). Идентификатор сессии sessionid1. Длительность сессии (Acct-Session-Time) - 100 секунд.

Утилита для резервного копирования базы данных

Для обеспечения сохранности данных рекомендуется периодически делать резервное архивирование SQL-базы данных. Для этого необходимо выполнить скрипт из поставки UTM:

/netup/utm5/bin/utm5_backup.sh

При этом будет создан файл /netup/utm5/backup/UTM5.YY_

MM_DD.gz, где YY - год создания архива, MM - месяц, DD - день.

Для периодического выполнения процедуры резервного копирования следует добавить строку вида:

Вспомогательные утилиты

0 5 * * * root /netup/utm5/

bin/utm5_backup.sh

в файл конфигурации планировщика задач /etc/crontab и перезапустить планировщик задач. При этом каждый день в 5 часов утра будет выполняться резервное копирование базы данных.

Утилита для загрузки IP-сетей из файла

Утилита для загрузки IP-сетей в классы трафика из файла. Для получения справки наберите следующую команду:

/netup/utm5/bin/utm5_load_tc.pl -h

usage: utm5_load_tc.pl -f file -c tc_class -n our_net -m our_mask [-r incoming]

В командной строке можно передать следующие параметры:

-f

Имя файла с информацией об IP-сетях следующего формата:

IP_NET/MASK

где IP_NET - адрес сети, MASK - маска подсети.



Идентификатор класса трафика в UTM. Например, 10.

-п

Адрес нашей IP-сети. Например, 192.168.10.0.



Маска нашей IP-сети. Например 255.255.255.0.



Если указать -г 1, то наша IP-сеть будет рассматриваться, как сеть назначения. Если данный ключ не указан, то наша IP-сеть будет рассматриваться, как источник.

Вспомогательные утилиты

Пример содержимого файла с информацией о сетях

128.134.151.128/25

144.206.166.0/24

144.206.176.0/24

Утилита для сканирования ARP-таблицы

Данная утилита позволяет автоматизировать процесс выдачи IP-адресов и осуществления связки с MAC-адресами. Для запуска этой утилиты наберите команду

/netup/utm5/bin/utm5_arp.pl

При этом на экране появятся записи, которые были обнаружены в ARP-таблице операционной системы и которые будут загружены в базу данных для дальнейшего использования. Для периодического обновления записей в базе данных рекомендуется установить выполнение данной утилиты по расписанию посредством системной утилиты cron. Для этого занесите запись в файл /etc/crontab:

*/5 * * * * root /netup/utm5/bin/utm5_arp.pl > /dev/ null 2>/dev/null

После этого необходимо перезапустить утилиту cron.

В результате при добавлении оператором IP-адресов через интерфейс администратора будут предложены на выбор все найденные пары IP-адрес/MAC-адрес.

Сбор статистики по протоколу IP-accounting с маршрутизатора Cisco


адрес/МАС-адрес Для запуска этой утилиты укажите корректные параметры для доступа к базе данных в файле /netup/utm5/bin/arp.sh и выполните команду:

/netup/utm5/bin/arp.sh

При этом в ARP-таблице операционной системы должны появиться неизменяемые связки IP-адрес/MAC-адрес. Они обычно помечаются как permanent либо PERM. Например:

(10.1.2.27) at 00:0c:29:8e:be:86 on lncO permanent [ethernet]

Для периодического обновления записей в ARP-таблице рекомендуется установить выполнение данной утилиты по расписанию посредством системной утилиты cron. Для этого занесите запись в файл /etc/crontab:

*/5 * * * * root /netup/utm5/bin/arp.sh > /dev/null 2>/dev/null

После этого необходимо перезапустить утилиту cron.

Данная технология позволяет избежать подмены IP-адресов со стороны злоумышленников, в результате чего уменьшается риск хищения IP-трафика.

Сбор статистики по протоколу IP-accounting с маршрутизатора Cisco


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

Записи, созданные верификатором, имеют следующий формат:

-- ERROR|WARNING <описание ошибки>

-- SQL DESC <описание SQL-запроса, который предлагает сделать верификатор> ^QL-запроо -- affected tables: <список таблиц>

В некоторых случаях SQL-команда будет за

комментирована и в описании помечена как «NOT RECOMMENDED». Это вызвано тем, что обычно все рекомендации верификатора по исправлению ошибок сводятся к удалению сбойных услуг, IP-групп и т. п. Противоречие в базе данных будет устранено, но вместе с этим может быть потеряна информация.

Перед выполнением работ по исправлению базы данных необходимо сделать резервную копию её таблиц. Для этого существует список «affected tables», содержащий названия таблиц, которые будут затронуты в ходе выполнении SQL-команд.

Перед исполнением SQL-команд обязательно требуется остановить ядро системы utm5_core. Обратите внимание, что перезапуск ядра после исправления базы данных может выявить новые несоответствия, вызванные исправлением старых ошибок.

Верификатор базы данных

Импорт данных из других систем

Импорт данных из других систем

Перед проведением действий по импорту в базу данных UTM необходимо остановить ядро системы. После проведения изменений нужно запустить ядро utm5_core. Если в процессе импорта были допущены ошибки, то появятся предупреждающие записи в файле /netup/utm5/log/verificator.log. В этом случае необходимо проверить все стадии ещё раз либо обратиться в службу технической поддержки Компании Не-тАП.

Создание учётной записи абонента

Для создания учётной записи абонента в базе данных UTM следует использовать следующий SQL-запрос:

INSERT INTO users (id, login, password, basic_account, is_blocked, discount_period_id, create_date, last_ change_date, who_create, who_change, is_juridical, full_name, juridical_address, actual_address, flat_ number, entrance, floor, passport, work_telephone, home_telephone, mobile_telephone, web page, icq_num-ber, tax_number, kpp_number, email, bank_id, bank_ac-count, comments, house_id, is_send_invoice, advance_ payment) VALUES ('ID', 'LOGIN', 'PASSWORD', 'ID', 'BLOCK', 'PERIOD_ID', unix_timestamp(), unix_time-stamp(), '-1', '-1', 'O', 'FULL_NAME', 'JUR_ADDR',

'ACT_ADDR', 'FLAT', 'ENT', 'FLOOR', '', 'PASSPORT',

'WORK_PHONE', 'HOME_PHONE', '', '', '', '', 'EMAIL',

'O', '', '', 'O', 'O', 'O');

Основные параметры, использующиеся в этом запросе, описаны ниже.

ID — уникальный идентификатор абонента и лицевого счёта. Идентификатор лицевого счёта может отличаться от идентификатора абонента.

LOGIN — имя учётной записи абонента. С этим именем происходит подключение пользователя к веб-интерфейсу.

PASSWORD — пароль для учётной записи пользователя.

Создание лицевого счёта

Для создания лицевого счёта абонента в базе данных UTM следует использовать следующую последовательность SQL-запросов:

INSERT INTO accounts (id, balance, account_name, credit, flags, discount_period_id, dealer_account_id, comission_coef, default_comission_value, is_dealer, int_status, block_recalc_abon, block recalc prepaid) VALUES ('ID', 'BALANCE', 'COMMENTS', 'CREDIT', 'PERIOD_ID', 'O', 'O', 'O', 'O', 'O', 'O', 'O', '0');

INSERT INTO users_accounts (uid, account_id) VALUES

('ID', 'ID');

Основные параметры, использующиеся в этих запросах, описаны ниже.

ID — идентификатор абонента и лицевого счёта.

BALANCE — баланс лицевого счёта в условных единицах.

Создание родительской периодической услуги

Для создания записи о периодической услуге в базе данных UTM следует использовать следующую последовательность SQL-запросов:

INSERT INTO services_data (id, service_type, service_ name, tariff_id, link_by_default, parent_service_id) VALUES (SERVICE_ID, SERVICE_TYPE, 'Периодическая услуга', O, 1, SERVICE_ID);

INSERT INTO periodic_services_data (id, cost, dis-count_method) VALUES (SERVICE_ID, COST, METHOD);

Основные параметры, использующиеся в этих запросах, описаны ниже.

SERVICE_ID — уникальный идентификатор услуги.

COST — стоимость периодической услуги в условных единицах. Данная стоимость будет списана в течение расчётного периода.

Импорт данных из других систем

Импорт данных из других систем

METHOD — способ списания. Возможные значения: 1 — в начале расчётного периода, 2 — в конце расчётного периода, 3 — плавно в течение всего расчётного периода.

SERVICE_TYPE — тип услуги. Для периодической услуги данное поле равно 2. Другие возможные значения: 1 — разовая услуга, 2 — периодическая услуга, 3 — передача IP-трафика, 4 — хотс-пот, 5 — коммутируемый доступ, 6 — телефония.

Создание родительской услуги передачи IP-трафика

Для создания записи об услуге IP-трафика в базе данных UTM следует использовать следующую последовательность SQL-запросов:

INSERT INTO services_data (id, service_type, service_ name, tariff_id, link_by_default, parent_service_id) VALUES (SERVICE_ID, SERVICE_TYPE, 'Услуга IP-трафика', 0, 1, SERVICE_ID);

INSERT INTO periodic_services_data (id, cost, dis-count_method) VALUES (SERVICE_ID, COST, METHOD);

INSERT INTO iptraffic_borders (borders_id, border,cost) VALUES (BORDER_ID, BORDER, BORDER_COST);

INSERT INTO traf_serv_tclasses (tst_id, tclass_id, borders_id) VALUES (TST_ID, TCLASS_ID, BORDER_ID);

INSERT INTO iptraffic_services_data (id, tst_id)

VALUES (SERVICE_ID, TST_ID);

Основные параметры, использующиеся в этих запросах, описаны ниже.

SERVICE_ID — уникальный идентификатор услуги.

BORDER_ID — уникальный идентификатор стоимостных границ для IP-трафика.

BORDER — граница в байтах.

BORDER_COST — стоимость трафика за 1 МБ при достижении указанной границы. Данная стоимость будет действовать до

следующей границы либо до бесконечности, если границ больше нет.

TST_ID — уникальный идентификатор для связки стоимостных границ, классов трафика и услуг передачи IP-трафика.

TCLASS_ID — идентификатор класса трафика. По умолчанию, в базе данных UTM создаётся три класса трафика с идентификаторами 10,20 и 1000.

COST — стоимость периодической услуги в условных единицах. Данная стоимость будет списана в течение расчётного периода.

METHOD — способ списания. Возможные значения: 1 - в начале расчётного периода, 2 - в конце расчётного периода, 3 - плавно в течение всего расчётного периода.

SERVICE_TYPE — тип услуги. Для услуги передачи IP-трафика данное поле равно 3. Другие возможные значения: 1 - разовая услуга, 2 - периодическая услуга, 3 - передача IP-трафика, 4 - хотспот, 5 - коммутируемый доступ, 6 - телефония.

Создание тарифного плана с включёнными в него услугами

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

Для создания записи о тарифном плана в базе данных UTM следует использовать следующий SQL-запрос:

INSERT INTO tariffs (id, name) VALUES (TID, 'Тарифный план');

Для создания записи о дочерней периодической услуге в базе данных UTM следует использовать следующую последовательность SQL-запросов:

INSERT INTO services_data (id, service_type, ser-vice_name, tariff_id, link_by_default, parent_ser-vice_id) VALUES (PERIODIC_SERVICE_ID, SERVICE_TYPE, 'Периодическая услуга', TID, 1, PARENT_SERVICE_ID);

Импорт данных из других систем

Импорт данных из других систем

52

INSERT INTO periodic_services_data (id, cost, dis-count_method) VALUES (PERIODIC_SERVICE_ID, COST, METHOD);

INSERT INTO tariffs_services_link (tariff_id, ser-vice_id) VALUES (TID, PERIODIC_SERVICE_ID);

Для создания записи о дочерней услуге IP-трафика в базе данных UTM следует использовать следующую последовательность SQL-запросов:

INSERT INTO services_data (id, service_type, service_ name, tariff_id, link_by_default, parent_service_id) VALUES (IP_SERVICE_ID, SERVICE_TYPE, 'Услуга IP-трафика', TID, 1, PARENT_SERVICE_ID);

INSERT INTO periodic_services_data (id, cost, dis-count_method) VALUES (IP_SERVICE_ID, COST, METHOD);

INSERT INTO iptraffic_borders (borders_id, border, cost) VALUES (BORDER_ID, BORDER, BORDER_COST);

INSERT INTO traf_serv_tclasses (tst_id, tclass_id, borders_id) VALUES (TST_ID, TCLASS_ID, BORDER_ID);

INSERT INTO iptraffic_services_data (id, tst_id)

VALUES (SERVICE_ID, TST_ID);

INSERT INTO tariffs_services_link (tariff_id, ser-vice_id) VALUES (TID, IP_SERVICE_ID);

Основные параметры, использующиеся в этих запросах, описаны ниже.

TID — идентификатор тарифного плана.

PERIODIC_SERVICE_ID — уникальный идентификатор дочерней периодической услуги. Значение идентификатора дочерней услуги должно отличаться от значения идентификатора родительской услуги.

IP_SERVICE_ID — уникальный идентификатор дочерней услуги передачи IP-трафика. Значение идентификатора дочерней услуги должно отличаться от значения идентификатора родительской услуги.

PARENT_SERVICE_ID — идентификатор родительской услуги.

Все остальные параметры заполняются аналогично параметрам базовых услуг, рассмотренным выше.

Создание расчётного периода

Для создания записи о расчётном периоде в базе данных UTM следует использовать следующую последовательность SQL-запросов:

INSERT INTO discount_periods (id, start_date, end_ date, periodic_type) VALUES (PERIOD_ID, unix_time-stamp('2004-12-01'), unix_timestamp('2005-01-01'), PERIOD_TYPE);

UPDATE discount_periods SET canonical_len=end_date-start_date WHERE id='PERIOD_ID';

Основные параметры, использующиеся в этих запросах, описаны ниже.

PERIOD_ID — уникальный идентификатор расчётного периода.

PERIOD_TYPE — тип расчётного периода. Возможные значения: 1 — ежедневный, 2 — еженедельный, 3 — ежемесячный, 4 — ежеквартальный, 5 — ежегодный.

Привязка тарифного плана к лицевому счёту абонента

Для создания привязка тарифного плана к лицевому счёту абонента в базе данных UTM следует использовать следующий SQL-запрос:

INSERT INTO account_tariff_link (id, account_id, tar-iff_id, next_tariff_id, discount_period_id) VALUES (ATL_ID, ACCOUNT_ID, TARIFF_ID, TARIFF_ID_NEXT, PERIOD_ID);

Основные параметры, использующиеся в этом запросе, описаны ниже.

ATL_ID — уникальный идентификатор данной связки «лицевой счёт-тарифный план».

Импорт данных из других систем

Импорт данных из других систем

ACCOUNT_lD — идентификатор лицевого счёта.

TARIFF_ID — идентификатор тарифного плана.

TARIFF_ID_NEXT — идентификатор тарифного плана следующего расчётного периода. Если на следующий расчётный период тарифный план не меняется, то значение в данном поле равно TARIFF_ID.

PERIOD_ID — идентификатор расчётного периода.

Для привязки периодической услуги из тарифного плана к лицевому счёту необходимо выполнить следующую последовательность SQL-запросов:

INSERT INTO service_links (id, user_id, account_id, service_id, tariff_link_id) VALUES (SLINK_ID, USER_

ID, ACCOUNT_ID, SERVICE_ID, ATL_ID);

INSERT INTO periodic_service_links (id, discount_pe-riod_id, discounted_in_curr_period, need_del, unpre-pay_period, unabon_period) VALUES (SLINK_ID, PERIOD_ ID, 0, 0, 0, 0);

Основные параметры, использующиеся в этих запросах, описаны ниже.

SLINK_ID — уникальный идентификатор связки «идентификатор абонента-идентификатор лицевого счёта-идентифика-тор услуги».

USER_ID — уникальный идентификатор абонента.

ACCOUNT_ID — уникальный идентификатор лицевого счёта

SERVICE_ID — уникальный идентификатор периодической услуги.

PERIOD_ID — уникальный идентификатор расчётного периода.

Для привязки услуги передачи IP-трафика из тарифного плана к лицевому счёту необходимо выполнить следующую последовательность SQL-запросов:

INSERT INTO service_links (id, user_id, account_id, service_id, tariff_link_id) VALUES (SLINK_ID, USER_

ID, ACCOUNT_ID, SERVICE_ID, ATL_ID);

INSERT INTO periodic_service_links (id, discount_pe-riod_id, discounted_in_curr_period, need_del, unpre-pay_period, unabon_period) VALUES (SLINK_ID, PERIOD_ ID, 0, 0, 0, 0);

INSERT INTO ip_groups (ip_group_id, ip, mask, uname, upass, mac, allowed_cid, create_date, ip_type) VALUES (IP_GROUP_ID, IP, MASK, ULOGIN, UPASS, MAC, '', unix_ timestamp(NOW()), 0);

INSERT INTO downloaded (downloaded_id, tclass_id) VALUES(DOWNLOADED_ID, TCLASS_ID);

INSERT INTO iptraffic_service_links (id, ip_group_ id, downloaded_id) VALUES (SLINK_ID, IP_GROUP_ID, DOWNLOADED_ID);

Основные параметры, использующиеся в этих запросах, описаны ниже.

SLINK_ID — уникальный идентификатор связки «идентификатор абонента-идентификатор лицевого счёта-идентифика-тор услуги».

USER_ID — уникальный идентификатор абонента.

ACCOUNT_ID — уникальный идентификатор лицевого счёта.

SERVICE_ID — уникальный идентификатор услуги передачи IP-трафика.

PERIOD_ID — уникальный идентификатор расчётного периода.

IP_GROUP_ID —идентификатор группы IP-адресов, привязанных к данному абоненту. Под этим идентификатором можно добавить несколько записей в таблицу ip_groups.

IP — IP-адрес в целочисленном виде (signed int). Например, адрес 195.161.112.6 необходимо вставлять как 1012830202.

MASK — маска подсети в целочисленном виде (signed int). Например, маску 255.255.255.255 необходимо вставлять как -1.

Импорт данных из других систем

Импорт данных из других систем

ULOGIN — логин, с которым возможно производить подключения по VPN.

upass — пароль для ulogin.

DOWNLOADED_lD — уникальный идентификатор для строки, в которую в процессе работы биллинговой системы будет записываться потреблённое количество данного класса трафика.

Предоставление услуги хотспот

Для организации услуги хотспот необходим сервер, на котором установлены операционная система FreeBSD или Linux и веб-сервер Apache, настроен кэширующий сервер DNS и установлена биллинговая система NetUP UTM.

Для полностью автоматического входа клиента в сеть нужно установить и настроить сервер DHCP, который будет выдавать компьютеру клиента IP-адрес. Наиболее распространённый и широко используемый сервер DHCP - isc-dhcpd. Его можно загрузить по адресу . gz.

Установку произвести командами.

./configure

make

make install

Также isc-dhcp можно установить из дистрибутивов, поставляющихся с операционной системой.

Конфигурация сервера DHCP

Главный конфигурационный файл - dhcpd.conf. Он должен содержать следующие строки.

option domain-name »yourdomain.com«; option domain-name-servers 10.1.2.1; option subnet-mask 255.255.255.0; default-lease-time 36000; max-lease-time 86400; authoritative; ddns-update-style none; log-facility local7;

subnet 10.1.2.0 netmask 255.255.255.0

option routers 10.1.2.1; pool

Предоставление услуги хотспот

Предоставление услуги хотспот

{

range 10.1.2.10 10.1.2.200 ; allow unknown clients;

}

}

При такой конфигурации сервер будет выдавать адреса из диапазона 10.1.2.10-10.1.2.200, как правило, начиная с конца диапазона. Сам сервер при этом должен иметь адрес 10.1.2.1. Очень важно проследить, на каком интерфейсе будет работать сервер DHCP, так как выдача адресов, например, в интернет может привести к нежелательным последствиям. Поэтому сервер DHCP должен запускаться с указанием интерфейса, на котором ему следует работать. Например, внутренний интерфейс fxp0. Правильная команда запуска - dhcpd fxp0. Интерфейс указывается в качестве параметра командной строки. Несколько интерфейсов можно указывать через пробел, например, dhcpd fxp0 fxp1 ed0

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

Настройка файрвола для FreeBSD

В ОС FreeBSD файрволом является программа ipfw.

Для перенаправления всех пакетов, следующих на 80 порт (как правило, просмотр веб-сайтов) от неавторизовавшихся клиентов, будем использовать natd с опцией -proxy_rule. Эта опция позволяет перенаправлять указанные пакеты на любой другой адрес, в нашем случае на страничку UTM с вводом номера и пин-кода предоплаченной карты.

Предположим, наш сервер имеет локальный адрес 10.1.2.1 и локальная сеть 10.1.2.0/24, внешний IP-адрес сервера - 10.10.10.1. Запускаем natd.

# natd -p 9000 -a 10.1.2.1 -proxy_rule port 80 server 10.1.2.1:80 -reverse

В соответствии с этим нужно сконфигурировать файрвол. Один из вариантов рабочей конфигурации - следующий.

10000 divert 9000 tcp from 10.1.2.0/24 to not 10.1.2.1 dst-port 80 via fxp0

10100 divert 9000 tcp from 10.1.2.1 80 to 10.1.2.0/24

10200 allow tcp from 10.1.2.0/24 to any dst-port 80 via fxp0

10300 allow tcp from any 80 to 10.1.2.0/24 10400 skipto 20000 ip from any to me 10500 skipto 20000 ip from me to any 15000 deny log ip from any to any

20000 divert 8668 ip from 10.1.2.0/24 to any via fxp1 20100 divert 8668 ip from any to 10.10.10.1 via fxp1 65535 allow ip from any to any

В этом варианте конфигурации приняты следующие обозначения:

fxp0 - интерфейс с адресом 10.1.2.1;

fxp1 - внешний интерфейс маршрутизатора;

8668 - порт, на котором принимает соединения обычный natd (вида natd -n fxp1).

При такой конфигурации необходимо добавить в UTM правила файрвола для включения доступа пользователям.

/sbin/ipfw add RULE_ID skipto 20000 ip from UIP to any

/sbin/ipfw add RULE_ID skipto 20000 ip from any to UIP,

И для выключения.

/sbin/ipfw delete RULE_ID,

В результате получим, что после активации карточки пользователь будет попадать сразу на правила divert 20000 и сможет

Предоставление услуги хотспот

Предоставление услуги хотспот

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

Настройка файрвола для Linux

В ОС Linux файрволом является программа iptables.

В iptables существует действие REDIRECT, которое позволяет перенаправлять указываемые пакеты на порт локальной машины, подменяя адрес назначения. Воспользуемся этим действием для перенаправления запросов от неавторизовавшихся клиентов на страницу UTM с вводом номера и пин-кода предоплаченной карты. Для этого в таблице nat в цепочку PREROUTING нужно добавить правило.

iptables -t nat -A PREROUTING -s 10.1.2.0/24 -p tcp --dport 80 -j REDIRECT --to-ports 80

Далее, в UTM нужно добавить на каждого пользователя два правила для включения доступа.

/sbin/iptables -t nat -I PREROUTING 1 -s UIP/UBITS -j ACCEPT

/sbin/iptables -A FORWARD -s UIP/UBITS -j ACCEPT /sbin/iptables -A FORWARD -d UIP/UBITS -j ACCEPT

И для выключения.

/sbin/iptables -t nat -D PREROUTING -s UIP/UBITS -j ACCEPT

/sbin/iptables -D FORWARD -s UIP/UBITS -j ACCEPT /sbin/iptables -D FORWARD -d UIP/UBITS -j ACCEPT

При этом должна быть выставлена запрещающая политика для цепочки FORWARD (iptables -P forward drop).

Настройка веб-сервера Apache

Необходимо переопределить начальную страницу и страницу 404 в конфигурационном файле httpd.conf.

ErrorDocument 404 »/cgi-bin/utm5/aaa5?cmd=card_login«

DirectoryIndex »/cgi-bin/utm5/aaa5?cmd=card_login« index.html

При этом на любой запрос пользователя будет выдаваться страница, с приглашением ввести номер и пин-код карты для выхода в Интернет.

После исправления конфигурационного файла необходимо перезапустить веб-сервер.

apachectl restart

В случае, если после успешной авторизации необходимо организовать автоматическое перенаправление пользователя на первоначально набранный URL, то необходимо в параметрах aaa5 передать redirect=yes. В этом случае параметры в конфигурации веб-сервера будут выглядеть следующим образом:

ErrorDocument 404 »/cgi-bin/utm5/aaa5?cmd=card_ login&redirect=yes«

DirectoryIndex "/cgi-bin/utm5/aaa5?cmd=card_ login&redirect=yes" index.html

Также необходимо в конфигурационном файле web5.cfg указать строку

src_redirect=yes

В этом случае при первом обращении к aaa5 будет сохранён адрес из переменной окружения SERVER_HOST и, если пользователь ввёл корректные данные для авторизации, то он будет автоматически переправлен по сохраненному адресу.

Например, пользователь после получения IP-адреса по DHCP запустил интернет-браузер и в строке адреса набрал сайт www. netup.ru. В результате срабатывания перенаправления пользователю будет выдано приглашение для ввода номера карты и пин-кода. После успешной авторизации автоматически будет загружена страница .

Настройка услуги хотспот

В центре управления в разделе (Тарификация | Услуги) необходимо добавить услугу хотспот, указать временные диапазо-

Предоставление услуги хотспот

Предоставление услуги хотспот

ны и стоимость. Идентификатор этой услуги необходимо указать при добавлении карточек в систему.

После ввода пользователем номера и пин-кода карты в процессе активации карты страничка в браузере будет автоматически регулярно обновляться, давая тем самым серверу знак, что пользователь все ещё пользуется услугой. В случае если в течение указанного в настройках промежутка времени не было обновления страницы (пользователь закрыл эту страничку или просто выключил компьютер), либо поступил сигнал закрытия сессии (пользователь выбрал в меню пункт «Выход»), то доступ в интернет блокируется и производится списание средств за время работы. Также блокирование доступа в интернет наступает при окончании средств на карте.

Приём платежей через платёжную систему «Рапида»

Приём платежей в пользу абонентов через платёжную систему (ПС) «Рапида» реализован в АСР NetUP UTM 5 посредством отдельного модуля utm5_rapida_check. Помимо приёма платежей через ПС «Рапида» модуль выступает также в качестве интегратора АСР NetUP UTM 5 со сторонним ПО в части автоматизации приёма платежей из других АСР или ИС, о чём упоминается в разделе «Платежи». В качестве протокола обмена информацией между модулем utm5_rapida_check и сторонним ПО выступают файлы с информацией о платежах абонентов (ФИПА).

Подготовка системы

Для начала работы с ключами необходимо выполнить следующие действия.

Загрузить последнюю версию dvc_tool с сайта разработчика. Для ОС FreeBSD: FreeBSD4.6R.zip. Для ОС Linux: Download/Master2.2.zip.

Исполняемый файл dvc_tool нужно установить в директорию /sbin.

Перейти в директорию:

cd /netup/utm5/dvc_home

Создать хранилище ключей:

dvc_tool -init 123 [ OK ][ p11 ][ init ][ (null) ]

Импортировать сертификаты. В примере указаны имена файлов с тестовыми сертификатами:

dvc_tool -cmd cert -inform P7B -in testpay4.p7b [ OK ][ cert ][ import ][ testpay ]

[ OK ][ cert ][ import ][ CP CSP Test CA ]

Приём платежей через платёжную систему «Рапида»

Приём платежей через платёжную систему «Рапида»

dvc_tool -cmd cert -inform DER -in CryptoproCA.cer [ OK ][ cert ][ import ][ CryptoPro CA ]

Проверка подписи на сообщениях

Проверка подписи на письмах от платежной системы осуществляется автоматически через настраиваемый интервал времени. При проверке используется программа /netup/ utm5/bin/utm5_rapida_check, которая в свою очередь после сбора сообщения с сервера POP3 выполняет проверку подписи на сообщениях следующей командой (команда приведена для информации, АСР автоматически выполняет данную проверку без участия администратора.):

dvc_tool -home /netup/utm5/dvc_home -cmd vfy -in / netup/utm5/pay_msg/1077049250_4032783c00000005.msg -smime | grep »\[ OK \] \[ vfy \]« | grep »\[ 100 \]«

Настройки модуля utm5_rapida_check

Для управления проведением платежей используются следующие параметры в настройках модуля utm5_rapida_check АСР NetUP UTM 5. Настройки модуля хранятся в его конфигурационном файле rapida5.cfg.

rapida_host

IP-адрес сервера POP3.

rapida_login

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

rapida_password

Пароль к почтовому ящику, в который поступают сообщения о платежах.

core_host

Адрес хоста, на котором запущено ядро биллинговой системы. Значение по умолчанию - 127.0.0.1.

core_port

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

Логин системного пользователя в биллинговой системе core_password

Пароль системного пользователя в биллинговой системе. rapida_check_interval

Интервал в секундах, через который производить проверку наличия новых платежей.

rapida_pay_path

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

rapida_log_path

Путь к системной директории модуля, где сохраняются сообщения от ПС «Рапида», в виде текстовых файлов, полученные с сервера POP3 без изменений.

rapida_ext_path

Путь к системной директории модуля, из которой модуль читает файлы ФИПА.

dvc_home

Путь к системной директории модуля, в которой находятся хранилище ключей и сертификаты, посредством которых производится проверка подписи на сообщениях от ПС «Рапида».

template_string_62

Приём платежей через платёжную систему «Рапида»

Приём платежей через платёжную систему «Рапида»

Параметр задает шаблон идентификации абонента в уведомлениях о платеже от ПС «Рапида» и ФИПА (строка :62 уведомления о платеже, смотрите ниже). В шаблоне могут быть использованы специальные символы, указывающие на признак по которому АСР NetUP UTM5 идентифицирует абонентов для вноса платежа:

ли - означает, что в данной позиции будет указан идентификатор абонента [user id].

ла - идентификатор счета [account id].

лс - идентификатор контракта [contract id].

Л1 - логин абонента.

Лр - семь цифр из логина абонента.

ЛЛ - в данной позиции будет указана некоторая нефиксированная информация, не являющаяся необходимой для идентификации абонента.

Примеры шаблонов:

template_string_62=HOMep документа: ла template_string_62=фио: лл, N договора: Л1

Проверка работоспособности

В результате работы в директории /netup/utm5/pay_msg будут сохраняться сообщения, полученные с сервера POP3 без изменений. Рекомендуется их сохранять для дальнейшего анализа. В директории /netup/utm5/pay будут сохраняться файлы в открытом виде, содержащие информацию о платежах. Например:

1077049250_4032783c00000002.msg 1077049250_4032783c00000003.msg 1077 0492 50_40327 83c00000004.msg 1077 0492 50_40327 83c00000005.msg 1077 0492 51_40327 83c00000001.msg ok_1077 0492 52_40327 83c00000005.pay

ok_1077049253_4032783c00000004.pay ok_107704925 5_4 032783c00000003.pay ok_107704925 6_4 032783c00000002.pay ok_10 7 7 0 49257_4 03 27 83 c 0000000l.pay

Если файл имеет префикс err_, следовательно, при обработке этого файла возникли ошибки. Если файл имеет префикс ok_, следовательно, обработка этого файла прошла успешно.

Формат файлов с информацией о платеже

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

RRECV

FROM: <от кого поступает платеж(абонент)>

TO: <кому поступает платеж(провайдер)>

DATE:<дата платежа(DD:MM:YY)>

:10 MessTp: 710

:21 RegRecvEssId: <Код платежных реквизитов ТСП>

:30 PaymId: <Код исполненного платежа>

:31 InvId: <Код регистрации принятого счета>

:40 PaymSum: <Сумма платежа>

:50 InvNumb: <Номер счета ТСП, по которому произошла оплата>

:51 InvDate: <Дата выписки счета в ТСП>

:60 PaymSubjText: <Текстовое описание назначения платежа>

:61 PaymSubjTp: <Код назначения платежа по каталогу типов назначений платежей>

:62 PaymSubjParam: <Идентификатор абонента>

ENDRRECV

Поле :10 всегда должно иметь значение 710.

В случае ФИПА, файл может содержать несколько лексических конструкций, расположенных в файле друг за другом.

Пример

RRECV

FROM: ООО Платежная интернет-система РАПИДА

TO: Закрытое акционерное общество »ТЕСТ« (г.Москва)

Приём платежей через платёжную систему «Рапида»

Приём платежей через платёжную систему «Рапида»

:10 MessTp: 710 :21 RegRecvEssId: 412 :30 PaymId: 12404 :4 0 PaymSum: 3,00 :31 InvId:

:5 0 InvNumb:

:51 InvDate:

:60 PaymSubjText: Доступ в интернет :61 PaymSubjTp: 584

:62 PaymSubjParam: НОМер Договора: 1 ENDRRECV

Сумма указанная в поле :40 PaymSum: зачисляется на основной лицевой счёт, соответствующий абоненту с номером договора указанным в поле : 62 PaymSubjParam: НОМер Договора: (если в качестве значения параметра template_string_62 используется значение лс).

Совместная работа UTM и LDAP

Данный вопрос детально рассмотрен в статье «Настройка и использование централизованного управления сервисами сети при помощи сервера LDAP» расположенной на сайте компании НетАП в разделе «Документация».

Использование биллинговой системы NetUP UTM в связке с сервером OpenLDAP позволяет более гибко и удобно администрировать услуги, предоставляемые пользователям. В результате описанных ниже настроек сервер LDAP будет играть роль единого хранилища пользовательских данных (логин, пароль, почтовый ящик и прочее), доступ к которому может иметь любое программное обеспечение в сети, поддерживающее протокол LDAP. Таким образом, можно поддерживать актуальность данных (наличие пользователя, его пароль и т. д.) для всех серверов в сети через единое хранилище.

Администратор системы

NetUP UTM 5

I

экспорт,

изменение,

удаление

пользователей
Сбор статистики по протоколу IP-accounting с маршрутизатора Cisco


4.2.52.tar.gz.

Установите BerkeleyDB командами.

tar xvfz db-4.2.52.tar.gz cd db-4.2.52 cd build_unix/

../dist/configure --prefix=/usr/ --exec-prefix=/usr/ make

make install

OpenLDAP

Скачайте OpenLDAP: .

Установите OpenLDAP командами.

tar xvfz openldap-2.1.26.tgz cd openldap-2.1.26 ./configure make depend make

make install

Отредактируйте конфигурационный файл /usr/local/etc/ openldap/slapd.conf. Пример содержимого конфигурационного файла приведён ниже.

include /usr/local/etc/openldap/schema/core.schema include /usr/local/etc/openldap/schema/cosine.schema

include /usr/local/etc/openldap/schema/inetorgperson. schema

include /usr/local/etc/openldap/schema/nis.schema

include /usr/local/etc/openldap/schema/openldap.sche-ma

include /usr/local/etc/openldap/schema/misc.schema include /usr/local/etc/openldap/schema/java.schema

pidfile /usr/local/var/run/slapd.pid argsfile /usr/local/var/run/slapd.args

allow bind_v2

database bdb

suffix "dc=example,dc=ru"

rootdn "cn=Manager,dc=example,dc=ru"

rootpw secret

directory /usr/local/var/openldap-netup index cn,sn,uid pres,eq,sub

Совместная работа UTM и LDAP

Совместная работа UTM и LDAP

Произведите запуск сервера OpenLDAP командой.

/usr/local/libexec/slapd

Создайте файл example.ldiff следующего содержания.

dn: dc=example,dc=ru objectclass: dcObject objectclass: organization o: Example company dc: example

dn: cn=Manager,dc=example,dc=ru objectclass: organizationalRole cn: Manager

Примените его командой.

ldapadd -D "cn=Manager,dc=example,dc=ru" -w secret < example.ldiff

Почтовый сервер Cyrus

Скачайте демон авторизации, почтовый (POP3/IMAP) сервер Cyrus и патч к нему по адресам:

ftp: / / ftp.andrew.cmu.edu/pub/ cyrus-mail / cyrus-imapd-2.2.3.tar.gz;

/ cyrus-mail/cyrus-sasl-2.1.18.tar. gz;

/ cyrus/cyrus-imapd-2.2.3 / cyrus-imapd-2.2.3-autocreate-0.8.6.diff.

Установите демон авторизации командами.

tar xvfz cyrus-sasl-2.1.18.tar.gz cd cyrus-sasl-2.1.18

./configure --with-ldap --with-bdb-incdir=/usr/local/ BerkeleyDB.4.2/include/

make

make install

Создайте файл /usr/local/etc/saslauthd.conf, в котором укажите строки.

ldap_servers: ldap://127.О.О.1/ ldap_bind_dn: cn=Manager,dc=example,dc=ru ldap_password: secret

ldap_search_base: ou=users,dc=example,dc=ru ldap_mech: DIGEST_MD5 ldap_auth_method: custom

Произведите запуск демона командой.

/usr/local/sbin/saslauthd -a ldap

Установите почтовый сервер командами.

tar xvfz cyrus-imapd-2.2.3.tar.gz

patch < cyrus-imapd-2.2.3-autocreate-0.8.6.diff cd cyrus-imapd-2.2.3

./configure --with-ldap --with-sasl=/usr/local/ --with-bdb=/usr/local/BerkeleyDB.4.2/ --with-bdb-inc-dir=/usr/local/BerkeleyDB.4.2/include/

make

make install

Создайте файл /etc/imapd.conf и укажите в нём строки.

configdirectory: /var/imap partition-default: /var/spool/imap sasl_pwcheck_method: saslauthd admins: aospan mboxlist_db: flat autocreatequota: 1ОООООО createonpost: yes

Добавьте в систему пользователя cyrus командой adduser.

Cоздайте директории.

/var/imap/

Совместная работа UTM и LDAP

Совместная работа UTM и LDAP

/var/imap/proc

/var/imap/db

/var/imap/socket

/var/imap/log

/var/imap/msg

/var/spool/imap/

Важно! Укажите владельцем созданных папок пользователя cyrus.

Выполните команды, находясь в директории cyrus-imapd-2.2.3.

./tools/mkimap

cp master/conf/normal.conf /etc/cyrus.conf

Произведите запуск почтового сервера командой.

/usr/cyrus/bin/master &

Почтовый сервер Postfix

Скачайте почтовый (SMTP) сервер postfix по адресу

Установите его командами.

tar xvfz postfix-2.О.19.tar.gz cd postfix-2.0.19 make tidy

make makefiles CCARGS="-I./ -DHAS_LDAP" AUXLIBS="-ll-dap -llber"

make

make install

Создайте конфигурационный файл /etc/postfix/main.cf примерно следующего содержания.

mailbox_transport = lmtp:unix:/var/imap/socket/lmtp alias_maps = hash:/etc/aliases, ldap:ldapsource ldapsource_server_host = example.ru

ldapsource_search_base = ou=users,dc=example,dc=ru ldapsource_version = 3

ldapsource_bind_dn = cn=Manager,dc=example,dc=ru ldapsource bind pw = secret ldapsource_result_attribute = mail ldapsource_query_filter = (&(mail=%s)) readme_directory = no sample_directory = /etc/postfix sendmail path = /usr/sbin/sendmail setgid_group = postdrop command_directory = /usr/sbin manpage_directory = /usr/local/man daemon_directory = /usr/libexec/postfix newaliases_path = /usr/bin/newaliases mailq path = /usr/bin/mailq queue_directory = /var/spool/postfix mail_owner = postfix

unknown_local_recipient_reject_code = 450

Произведите запуск почтового сервера командой.

/usr/libexec/postfix/master &

Создание схемы LDAP

Создайте файл netup.ldiff следующего сдержания.

dn: ou=users, dc=example, dc=ru objectclass: organizationalUnit ou: users

dn: cn=test, ou=users, dc=example, dc=ru cn: test sn: test

givenName: Test Test objectClass: inetOrgPerson objectClass: uidObject objectclass: organizationalPerson objectclass: top mail: test

Совместная работа UTM и LDAP

Совместная работа UTM и LDAP

mail: uid: test

userPassword: {MD5}2FeO34RYzgb7xbt2pYxcpA==

Затем примените созданный файл командой.

ldapadd -D "cn=Manager,dc=example,dc=ru" -w secret < netup.ldiff

В результате будет создана учётная запись почты . Для получения почты по протоколу POP3 (рекомендуется настроить POP3S) необходимо использовать логин test и пароль qwerty (в LDAP хранится его MD5-хеш: {MD5} 2FeO34 RYzgb7xbt2pYxcpA==).

Сгенерировать хеши можно perl-скриптом, который можно найти по адресу ,

либо использовать команду

slappasswd -h {MD5}

Просмотреть содержимое LDAP можно при помощи утилиты командной строки ldapsearch либо при помощи графической утилиты «LDAP Browser/Editor»: ~gawojar/ldap /.

Установка и настройка сервера DHCP

Скачайте сервер DHCP по адресу ftp://ftp.isc.org/isc/dhcp/ dhcp-3.0pl2.tar.gz и обновление к нему по адресу . lunytune.net/dhcp-3.0pl2.ldap.diff.gz.

Установите командами.

tar xvfz dhcp-3.0pl2.tar.gz gzip -d dhcp-3.0pl2.ldap.diff.gz cp dhcp-3.0pl2.ldap.diff dhcp-3.0pl2 cd dhcp-3.0pl2

patch -p1 < dhcp-3.0pl2.ldap.diff ./configure

файле work.freebsd/server/Makefile укажите строку LIBS = -lldap

вместо строки

LIBS =

Выполните команды.

make

make install

Если у вас уже имеется файл конфигурации dhcpd.conf, то для автоматического переноса данных в LDAP следует использовать скрипт contrib/dhcpd-conf-to-ldap.pl(предварительно в него необходимо вписать ваши данные).

Примерный вариант LDIFF-файла:

dn: cn=dhcpd.example.ru, dc=example, dc=ru objectClass: top objectClass: dhcpServer cn: dhcpd.example.ru

dhcpServiceDN: cn=DHCP Config, dc=example, dc=ru

dn: cn=DHCP Config, dc=example, dc=ru cn: DHCP Config objectClass: top objectClass: dhcpService objectClass: dhcpOptions

dhcpPrimaryDN: cn=dhcpd.example.ru, dc=example, dc=ru dhcpStatements: default-lease-time 600 dhcpStatements: max-lease-time 7200 dhcpStatements: log-facility local7 dhcpOption: domain-name "example.ru" dhcpOption: domain-name-servers 10.1.2.1

dn: cn=10.1.2.0, cn=DHCP Config, dc=example, dc=ru

cn: 10.1.2.0

objectClass: top

objectClass: dhcpSubnet

objectClass: dhcpOptions

Совместная работа UTM и LDAP

Совместная работа UTM и LDAP

dhcpNetMask: 24

dhcpRange: 10.1.2.2 10.1.2.253 dhcpOption: domain-name-servers 10.1.2.1 dhcpOption: routers 10.1.2.1

dn: cn=test, cn=DHCP Config, dc=example, dc=ru cn: test

objectClass: top objectClass: dhcpHost objectClass: dhcpOptions

dhcpHWAddress: ethernet 00:00:e2:58:ac:a6 dhcpStatements: fixed-address 10.1.2.45

Создайте конфигурационный файл /etc/dhcpd.conf примерно следующего содержания:

ldap-server "localhost"; ldap-port 389;

ldap-username "cn=Manager, dc=example, dc=ru"; ldap-password "secret"; ldap-base-dn "dc=example, dc=ru"; ldap-method dynamic; ddns-update-style ad-hoc;

Запуск сервера DHCP произведите командой (вместо fxp0 укажите ваш интерфейс).

/usr/sbin/dhcpd fxp0

В результате поиск данных для выдачи IP-адресов по DHCP будет производиться в LDAP.

Установка и настройка сервера FTP

Скачайте FTP-сервер - ftp://ftp.proftpd.org/distrib/source/ proftpd-1.2.9.tar.bz2

Установите сервер командами.

tar xvfj proftpd-1.2.9.tar.bz2 cd proftpd-1.2.9

./configure --with-modules=mod_ldap make

make install

В конфигурационном файле /usr/local/etc/proftpd.conf

укажите строки.

LDAPServer localhost

LDAPDNInfo cn=Manager,dc=example,dc=ru secret LDAPDoAuth on "ou=users,dc=examle,dc=ru"

Файл LDIFF для добавления тестового пользователя выглядит следующим образом.

dn: cn=test, ou=users, dc=netup, dc=ru

cn: test

sn: test

givenName: Test

objectClass: inetOrgPerson

objectClass: uidObject

objectClass: organizationalPerson

objectClass: posixAccount

objectClass: top

uid: test

userPassword: {MD5}2FeO34RYzgb7xbt2pYxcpA== uidNumber: 10001 gidNumber: 10001 homeDirectory: /home/test

Применить файл можно командой.

ldapadd -D "cn=Manager,dc=example,dc=ru" -w secret < netup.ldiff

В результате будет создана учётная запись FTP test с паролем qwerty (в LDAP хранится MD5-хеш {MD5} 2FeO34RYzgb7xbt2pY xcpA==). Домашняя директория пользователя - /home/test.

Запуск сервера FTP можно осуществить командой.

/usr/local/sbin/proftpd

Совместная работа UTM и LDAP

Совместная работа UTM и LDAP

180

Установка и настройка сервера DNS

Скачайте сервер DNS по адресу ftp://ftp.isc.org/isc/ bind9/9.2.3/bind-9.2.3.tar.gz.

Разархивируйте командами.

tar xvfz bind-9.2.3.tar.gz cd bind-9.2.3

Скопируйте файлы командами:

cp contrib/sdb/ldap/ldapdb.c bin/named/ cp contrib/sdb/ldap/ldapdb.h bin/named/include/

Отредактируйте файл bin/named/Makefile.in. Необходимо указать строки вместо тех, что есть.

DBDRIVER_OBJS = ldapdb.@O@

DBDRIVER_SRCS = ldapdb.c

DBDRIVER_INCLUDES = -I/usr/local/include DBDRIVER_LIBS = -L/usr/local/lib -lldap -llber

Отредактируйте файл bin/named/main.c. Необходимо указать строки.

include

после строки

#include "xxdb.h

ldapdb_init();

после строки

xxdb_init();

ldapdb_clear();

после строки

xxdb_clear();

После этого можно произвести сборку и установку командами.

./configure

make

make install

Сервер DNS будет установлен по пути /usr/local/sbin/ named.

Конфигурационный файл /etc/named.conf.

Пример конфигурации домена, данные для которого хранятся в LDAP.

zone "hosting.example.ru" { type master;

database "ldap ldap://127.О.0.1/dc=hosting,dc=exampl e,dc=ru 172800";

} ;

Примерный вариант LDIFF-файла для создания зоны с одной записью.

dn: dc=hosting,dc=example,dc=ru dc: hosting objectClass: dcObject objectClass: Organization o: DNS

dn: relativeDomainName=zzz,dc=hosting,dc=example,dc= ru

objectClass: top objectClass: dNSZone relativeDomainName: zzz aRecord: 10.1.2.105 dNSTTL: 3600

zoneName: hosting.example.ru

dn: dNSTTL=3600+relativeDomainName=@,dc=hosting,dc=ex ample,dc=ru

Совместная работа UTM и LDAP

Совместная работа UTM и LDAP

182

objectClass: top objectClass: dNSZone relativeDomainName: @

sOARecord: hosting.example.ru. root.example.ru. 2004040304 86400 900 3600000 360

0

dNSTTL: 3600

zoneName: hosting.example.ru mXRecord: 10 mail.example.ru. nSRecord: ns.example.ru. nSRecord: ns2.example.ru. aRecord: 10.0.0.1

Настройка биллинговой системы

Настройки доступа к серверу LDAP из UTM указываются в конфигурационном файле /netup/utm5/utm5.cfg. Для этого используются следующие параметры:

ldap_enable

Включить ли поддержку LDAP. Значение по умолчанию - no. Для включения необходимо указать yes.

ldap_host

IP-адрес сервера LDAP. Значение по умолчанию - 127.0.0.1. ldap_login

Логин для доступа к серверу LDAP. Значение по умолчанию не предусмотрено. Пример: cn=Manager,dc=example,dc=ru.

ldap_password

Пароль для доступа к серверу LDAP. Значения по умолчанию не предусмотрено.

ldap_ping_timeout

Периодичность проверки соединения с сервером LDAP в секундах. Значение по умолчанию - 60 секунд.

ldap_base_dn

Верхняя часть вашего дерева LDAP. Эта строка добавляется к запросам на сервер LDAP. Пример: ou=users, dc=example, dc=ru. В этом случае запрос на добавление почтового ящика будет выглядеть как cn=, ou=users, dc=example, dc=ru.

Для добавления почтового ящика пользователю через биллинговую систему необходимо задать новый технический параметр на подключённую услугу. Обычно это периодическая услуга, стоимость которой равна абонентской плате за пользование почтовым ящиком.

Сбор статистики по протоколу IP-accounting с маршрутизатора Cisco


IP через биллинговую систему необходимо подключить пользователю услугу типа «Передача IP-трафика» и указать IP-адрес и MAC-адрес. При этом будет автоматически добавлена запись на сервере LDAP в раздел cn=DHCP Config. Например,

dn: cn=10.1.2.45, cn=DHCP Config, dc=example, dc=ru

cn: 10.1.2.45

objectClass: top

objectClass: dhcpHost

objectClass: dhcpOptions

dhcpHWAddress: ethernet 00:00:e2:58:ac:a6 dhcpStatements: fixed-address 10.1.2.45

Ссылки

RFC-2251 по протоколу LDAP - rfc2251.txt.

Проект OpenLDAP - .

Совместная работа UTM и LDAP

Контрольный пример

184

Контрольный пример

Контрольный пример предназначен для проверки корректности функционирования биллинговой системы NetUP UTM на вашем сервере. Суть проверки заключается в загрузке в базу данных параметров пяти клиентов и эмулирования работы этих пользователей в течение трёх месяцев. Необходимые данные для запуска контрольного примера находятся на CD-ROM с биллинговой системой NetUP UTM.

Внимание. Остановите сервисы критичные к изменению даты на сервере.

Остановите ядро биллинговой системы utm5_core.

Установите дату на сервере на 00 часов 00 минут 1 апреля 2003 года.

Для FreeBSD:

date 0304010000

Для Linux:

date 0401000003

Для загрузки данных в базу выполните команды.

mysqladmin drop UTM5

mysqladmin create UTM5

mysql UTM5 < UTM5_MYSQL_kp.sql

mysql -f UTM5 < UTM5_MYSQL_update.sql

Произведите корректировку данных в файле kp.pl о том, на каком порту принимает NetFlow-пакеты ядро биллинговой системы, а также путь к программе-генератору NetFlow-пакетов - utm5_flowgen (обычно /netup/utm5/bin/ utm5_flow-gen).

Запустите ядро биллинговой системы utm5_core.

Запустите программу kp.pl командой.

perl kp.pl

В процессе работы программы дата на сервере будет меняться с 1 апреля 2003 г. до 1 июля 2003 г. Таким образом, будет эмулирована работа тестовых пользователей в течение трёх месяцев: апреля, мая, июня 2003 г.

Первый месяц (апрель 2003 г.)
clil cli2 cli3 cli4 cli5
Объем в день,

МБ
0,5 2 4 10 40
Количество

дней
30 30 30 30 30
Объем за месяц, МБ 15 60 120 300 1200
Стоимость единицы превышения 0,2 0,2 0,2 0,15 0,15
Предоплачено,

МБ
50 50 50 500 500
Стоимость превышения 0 2 14 0 105
Абонплата 3 3 3 100 100
Остаток -3 -5 -17 -100 -205
Контрольный пример

Контрольный пример

Второй месяц (май 2003 г.)
clil cli2 cli3 cli4 cli5
Объем в день,

МБ
1 2,5 5 20 50
Количество

дней
31 31 31 31 31
Объем за месяц, МБ 31 77,5 155 620 1550
Стоимость единицы превышения 0,2 0,2 0,2 0,15 0,15
Предоплачено,

МБ
50 50 50 500 500
Стоимость превышения 0 5,5 21 18 157,5
Абонплата 3 3 3 100 100
Остаток -6 -13,5 -41 -218 -462,5
Третий месяц (июнь 2003 г.)
clil cli2 cli3 cli4 cli5
Объем в день,

МБ
1,5 3 6 30 60
Количество

дней
30 30 30 30 30
Объем за месяц, МБ 45 90 180 900 1800
Стоимость единицы превышения 0,2 0,2 0,2 0,15 0,15
Предоплачено,

МБ
50 50 50 500 500
Стоимость превышения 0 8 26 60 195
Абонплата 3 3 3 100 100
Остаток -3 -11 -29 -160 -295
Итого остаток -9 -24,5 -70 -378 -757,5
В случае корректной работы биллинговой системы, полученные вами цифры после отработки kp.pl должны совпадать с указанными в таблице.

После проведения работ установите корректную дату на сервере.

Контрольный пример

Личный кабинет

Для входа в личный кабинет пользователя необходимо запустить любой интернет-браузер (Internet Explorer, Opera, Mozil-la, Konqueror, lynx и др.) и набрать в адресной строке:



где SERVER замените на IP-адрес либо доменное имя сервера провайдера. При этом префикс https:/ / указывает на то, что необходимо использовать шифрование SSL. В случае если вебсервер не поддерживает SSL, то интернет-браузером будет выдана ошибка. В этом случае можно использовать префикс http://, но при этом возникает опасность перехвата логина и пароля злоумышленниками.

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

Вкл/Выкл интернета

Руководство пользователя

Здесь можно включить или выключить Интернет. Если не удается включить Интернет, то это означает, что аккаунт заблокирован. Заблокирован он может быть по двум причинам: либо закончились деньги на счету, либо администратор заблокировал аккаунт.

Отчёты

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

ской платы. Здесь же доступны графики загрузки за текущий день и месяц.

История платежей

Здесь можно посмотреть даты и суммы всех платежей, которые осуществлялись на вашем счету.

Пополнение счёта

Можно пополнить свой счёт самостоятельно, если есть предоплаченная Интернет-карточка. Карточка содержит номер и пин-код. Если ввести их в соответствующие поля, ваш счёт пополнится на номинал карточки. Также можно выписать квитанцию на оплату через банк.

Настройки

В этом разделе можно поменять пароль на вход в рабочий кабинет.

Утилита utm5 wintray

Руководство пользователя

Для оперативного и удобного доступа к балансу лицевого счета рекомендуется использовать утилиту utm5_wintray.

Личный кабинет


іп.ол Модуль коммутируемых и VPN-соединений

Модуль коммутируемых соединений

Модуль коммутируемых соединений представляет собой сервер NetUP RADIUS и предназначен для обработки запросов на авторизацию и учёт потребленных услуг.

Сервер NetUP RADIUS представляет собой приложение, которое в реальном времени обрабатывает поступающие к нему запросы по протоколу Remote Authentication Dial In User Service (RADIUS) - RFC 2138 и RFC 2139.

При обработке запросов сервер NetUP RADIUS обращается к ядру системы по протоколу URFA.

Модуль коммутируемых соединений

Описание протокола RADIUS

Протокол Remote Authentication Dial In User Service (RADIUS) описан в документах RFC 2138 и RFC 2139 и предназначен для обеспечения авторизации, аутентификации и аккаунтинга между сервером доступа и сервером авторизации.

Протоколу RADIUS официально присвоен порт UDP 1812.

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

Описание протокола RADIUS

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

0 12 3

0і1і2і3і4і5і6і7|8і9і0і1і2і3і4і5і6і7і8і9і0і1і2і3і4і5і6і7і8і9і0і1

аутентификатор

атрибуты

Поле «Код» размером один байт и может принимать следующие значения: 1 - запрос на проверку доступа (Access-Request), 2 - доступ разрешён (Access-Accept), 3 - в доступе отказано (Access-Reject), 4 - запрос на учёт (Accounting-Request), 5 - ответ на запрос на учёт (Accounting-Response), 255 - зарезервированное значение (Reserved).

Поле «Длина» размером два байта указывает на полный размер всего пакета RADIUS.

Поле «Аутентификатор» размером 16 байтов содержит информацию для проверки подлинности пересылаемых пакетов.

Поле «Атрибуты» RADIUS переменной длины содержит полезные данные. Данное поле состоит из последовательности атрибутов и соответствующих присвоенных значениий. Каждый атрибут имеет своё числовое обозначение (идентификатор). Например, атрибут User-Name имеет числовое значение 1 и содержит в себе имя пользователя, а атрибут User-Password имеет значение 2 и содержит в себе пароль пользователя в открытом виде.

При подключении пользователя сначала происходит его аутентификация, т. е. проверка подлинности. Для этого сервер доступа предлагает пользователю ввести логин (имя учётной записи) и пароль. После ввода этих данных сервер доступа формирует пакет Access-Request и отсылает его серверу RADIUS.

Описание протокола RADIUS

В данном пакете содержатся введённые пользователем данные. Следует учесть, что есть несколько методов аутентификации и содержимое пакета с запросом на аутентификацию будет содержать разные данные в зависимости от того, какой метод используется. Наиболее распространенные методы - PAP и CHAP.

PAP (Password Authentication Protocol) - простейший протокол аутентификации. Он не предусматривает использования шифрования паролей. При аутентификации по этому методу сервер доступа заполняет атрибуты «Имя пользователя» (UserName) и «Пароль пользователя» (User-Password) и отсылает запрос серверу RADIUS.

CHAP (Challenge Handshake Authentication Protocol) - более сложный и защищённый протокол, описанных в документе RFC 1994. Он использует зашифрованные пароли. При аутентификации по этому протоколу сервер доступа генерирует случайное 16-байтное значение (CHAP challenge) и отсылает его на компьютер пользователя. После этого компьютер поль-

Описание протокола RADIUS

зователя отсылает обратно в незашифрованном виде логин пользователя, и зашифрованное значение (хэш), полученное из строки вызова, идентификатора сеанса и пароля пользователя с применением алгоритма MD5. Протокол MS-CHAP (Microsoft Challenge Handshake Authentication Protocol) очень похож на CHAP.

После получения данных аутентификации сервер RADIUS проводит их проверку и, если они корректны, то отсылает обратно пакет «Доступ разрешен» (Access-Accept). В противном случае посылается пакет «В доступе отказано» (Access-Reject).

В пакете «Доступ разрешен» (Access-Accept) также в поле атрибутов могут передаваться параметры для установки сеанса, например, IP-адрес пользователя (Framed-IP-Address), тип протокола (Framed-Protocol), максимальное количество времени, отведённое на сессию (Session-Timeout).

Сервер доступа, получив пакет «Доступ разрешен» (Access-Accept), устанавливает соединение с пользователем. Если данный пакет не получен либо получен пакет «В доступе отказано» (Access-Reject), то соединение разрывается.

После успешного установления соединения сервер доступа отсылает на сервер RADIUS пакет «Запрос на учёт» (Accounting-Request), в котором содержится информация о начале предоставления услуги и параметрах сеанса: порт на который подключился пользователь (NAS-Port), идентификатор сессии (Acct-Session-Id). Это так называемая стартовая запись.

При окончании сеанса отсылается пакет со стоп-записью. В этом пакете содержится информация об окончании предоставления услуги. Также в этом пакете содержится информация о том, сколько времени предоставлялась услуга (Acct-Session-Time), сколько принято или передано байт в ходе работы.

Настройка сервера RADIUS

Сервер NetUP RADIUS устанавливается по следующему пути

/netup/utm5/bin/utm5_radius. Для его работы необходима загрузка в ядро биллинговой системы модуля /netup/utm5/ lib/utm5_radius/liburfa-radius.so. Чтобы сделать это, необходимо указать путь к файлу модуля в конфигурационном файле utm5.cfg, либо произвести загрузку этого модуля в интерфейсе администратора.

При запуске сервера RADIUS без параметров, он загружает настройки из файла /netup/utm5/radius5.cfg. Для указания альтернативного файла конфигурации можно пользоваться параметром командной строки -с, например,

utm5_radius -с /etc/radius5.cfg

Файл конфигурации сервера RADIUS

Файл состоит из строк вида параметр=значение

Настройка сервера RADIUS

Строки, начинающиеся с символа «#», считаются комментарием.

Возможные параметры: core_host

Адрес хоста, на котором запущено ядро биллинговой системы. Значение по умолчанию - 127.0.0.1.

core_port

Порт, на котором запущено ядро биллинговой системы. Значение по умолчанию - 11758. В случае, если core_host не указан или пуст, данный параметр неактивен.

radius_login

Логин системного пользователя в биллинговой системе. Значение по умолчанию - radius.

radius_password

Пароль системного пользователя в биллинговой системе. Значение по умолчанию - radius.

radius_ssl_type

Тип безопасного соединения SSL. Возможные варианты: tlsl, ssl3, none. В случае если указано значение none, будет использоваться нешифрованное соединение.

radius_acct_port

Порт для приема пакетов Accounting. Значение по умолчанию - 1813.

radius_auth_port

Порт для приема пакетов Access. Значение по умолчанию

- 1812.

Настройка сервера RADIUS

radius_acct_host

IP-адрес узла для приёма пакетов Accounting. Значение по умолчанию - 0 . О . О . О (все интерфейсы).

radius_auth_host

IP-адрес узла для приема пакетов Access. Значение по умолчанию - 0 . О . О . О (все интерфейсы).

log_file_main

Путь к файлу, куда будет записываться журнал событий. Например, /netup/utm5/log/radius_main.log.

log_file_debug

Путь к файлу, куда будет записываться журнал событий. Например, /netup/utm5/log/radius_debug.log.

radius_auth_mppe

Разрешить MPPE 128 бит при авторизации по протоколу MS-CHAP^. Значение по умолчанию не предусмотрено. Для включения необходимо указать значение enable.

radius_auth_vap

Запретить авторизоваться заблокированным пользователям. Для включения необходимо указать значение 1. Значение по умолчанию — 0, т. е. заблокированные пользователи по умолчанию могут авторизоваться.

radius_ippool_acct_timeout

Время в секундах, на которое происходит блокирование IP-адресов в пуле после отправки пакета Access-Accept. Значение по умолчанию — 30 секунд, т. е. если в течение этого времени не пришел пакет Accounting-Start, то IP-адрес снова считается свободным и может быть выдан при следующей успешной авторизации.

radius_ippool_timeout

Настройка сервера RADIUS

Время в секундах, на которое происходит блокирование IP-адресов в пуле после прихода пакета Accounting-Start. Значение по умолчанию не предусмотрено (адреса блокируются до прихода пакета Accounting-Stop).

radius_auth_null

При включении этой опции (значение yes или enable) сервер RADIUS будет принимать и успешно авторизовать запросы без пароля в случае, если пароль пользователя пуст. Имеются в виду запросы без атрибута CHAP, PAP или MSCHAP авторизации. По умолчанию, опция выключена.

radius_auth_h323_remote_address

При включении данной опции есть возможность авторизоваться не по атрибуту user-name, а по значению VSA атрибута от Cisco: h323-remote-address, которое содержит в себе IP-адрес клиента, инициировавшего сессию. При приёме запроса с данным атрибутом сервер RADIUS использует его значение (IP-адрес в формате x.x.x.x) в качестве логина, т. е. для успешной авторизации должна присутствовать связка услуги IP-телефонии, в которой в поле логина указан IP-адрес клиента (в формате x.x.x.x, например, 192.168.1.56).

radius_nas_port_vpn

Указанный в данном поле тип порта будет использоваться при подключении по VPN. В случае если при авторизации по услуге VPN будет передан другой тип порта, то радиус-сервер откажет в авторизации. Данная опция применяется для предотвращения подключения пользователей коммутируемого доступа по VPN. Обычно значение равно 5 (Virtual).

radius_nas_port_dialup

Аналогично для коммутируемого доступа. Данную директиву можно указать несколько раз. Например,

radius nas port dialup=0 radius nas port dialup=1

Настройка сервера RADIUS

В данном примере для подключения по услуге «Коммутируемый доступ» необходимо подключаться к порту типа 0 (Async) либо 1 (Sync). В противном случае сервер RADIUS откажет в авторизации и на сервер доступа будет выслан пакет Access-Reject.

radius_nas_port_tel

Аналогично для услуги «Телефония».

radius_card_autoadd

При задании значения yes, эта опция разрешает проводить автоматическую регистрацию пользователей через сервер RADIUS по предоплаченной интернет-карте. При этом пользователь в поле «Логин» указывает номер карты, а в поле «Пароль» - пин-код карты.

Настройка VPN

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

Интернет
Личный кабинет


трафик» со статическим IP-адресом. Для добавления этой услуги в интерфейсе администратора нужно выбрать раздел «Тарификация, Услуги, Добавить».

Личный кабинет


адрес, который будет автоматически выдаваться клиенту при подключении по VPN.

Личный кабинет


сервер должен отобразить текст.

Packet from vpn.test.ru 'a' connecting CHAP

CHAP Challenge size: 16

Authorized
IP claimed: 0xac12bd13
Reply:
RPacket:
Code: 2; ID : 50
0; Attr: 6>[4]
0; Attr: 7>[4]
0; Attr: 8>[4]
0; Attr: 10>[4]
0; Attr: 12>[4]
0; Attr: 13>[4]
0; Attr: 27>[4]
Size send: 62
Next...
Size: 104; HDR.Size: 104
Acct: Recv.
RPacket:
Code: 4; ID : 112
0; Attr: 1>[1]
0; Attr: 6>[4]
0; Attr: 7>[4]
0; Attr: 8>[4]
0; Attr: 9>[4]
0; Attr: 32>[16]
0; Attr: 40>[4]
0; Attr: 41>[4]
0; Attr: 44>[17]
0; Attr: 50>[0]
0; Attr: 61>[4]
Настройка VPN

Acct: Packet from vpn.test.ru Session ID: 23028-a1079623271 Acct: START Acct: IP: 0xac12bd13

Bind: 0xac12bd13: 0xac12bd13 Acct: Reply:

RPacket:

Code: 5; ID: 112 Size send: 20 Acct: Next...

Настройка сервера доступа (NAS)

Настройка в среде FreeBSD

Установите сервер VPN (пакет PoPToP). Его можно установить из поставляемых с дистрибутивом FreeBSD портов.

Создайте файл конфигурации /etc/pptpd.conf. Он имеет следующий формат.

option /etc/ppp/ppp.conf localip 172.16.0.1 pidfile /var/run/pptpd.pid

Создайте файл конфигурации /etc/ppp/ppp.conf. Он имеет такой формат.

loop:

Настройка VPN

set timeout 0 set device /dev/ppp local

# Server (local) IP address, Range for Clients, and Netmask

set ifaddr 172.16.0.1 172.16.0.2-254 255.255.255.255 set server /tmp/loop "" 0177

pptp: load loop enable chap #enable mschapv2 #enable pap

set radius /etc/radius.conf

В данном случае включена авторизация CHAP. Строки, включающие авторизацию PAP, MSCHAP-v2 закомментированы.

Создайте файл конфигурации /etc/radius.conf. Он имеет следующий формат.

auth 127.0.0.1:1812 mysecret acct 127.0.0.1:1813 mysecret

В данном случае указывается, что сервер NetUP RADIUS принимает соединения на адрес 127.0.0.1 (на локальной машине) на портах 1812 и 1813. Секретное слово для общения с сервером RADIUS - mysecret

Запустите сервер VPN

pptpd

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

Настройка в среде Linux (на примере RedHat 9.0)

Для обновления пакета ppp необходимо выполнить команды.

cvs -d :pserver:cvs@pserver.samba.org:/cvsroot login cvs

cvs -z5 -d :pserver:cvs@pserver.samba.org:/cvsroot co

Настройка VPN

ppp

cd ppp/

./configure

make

make install

Если сервер CVS недоступен, то можно скачать исходный код программы по следующей ссылке ftp://ftp.samba.org/pub/ PPP / ppp-2.4.2.tar.gz.

Далее необходимо выполнить команды.

tar xvfz ppp-2.4.2.tar.gz

cd ppp-2.4.2 ./configure make

make install

Установите сервер VPN (пакет PoPToP). Его можно взять из дистрибутива RedHat, либо загрузить с сервера . poptop.org/.

Создайте файл конфигурации /etc/pptpd.conf. Он имеет следующий формат.

option /etc/ppp/options localip 172.16.0.1

Создайте файл конфигурации /etc/ppp/options. Он имеет такой формат.

auth

#require-pap require-chap #require-mschap-v2 local

172.16.0.1: plugin radius.so

В данном случае включена авторизация CHAP. Строки, включающие авторизацию PAP, MSCHAP-v2 закомментированы.

Настройка VPN

Внесите корректировки в файл конфигурации /etc/radius-client/radiusclient.conf. Необходимо внести информацию о вашем сервере RADIUS.

authserver localhost:1812 acctserver localhost:1813

В данном случае указывается, что сервер NetUP RADIUS находится по адресу 127.0.0.1 (на локальной машине) на портах 1812 и 1813. Секретное слово для общения с сервером RADIUS - mysecret указывается в другом конфигурационном файле /

etc/radiusclient/servers. localhost mysecret

Запустите сервер VPN.

pptpd

На этом конфигурация сервера доступа на базе Linux Red Hat 9.0 закончена. Если всё выполнено без ошибок, то клиенты должны беспрепятственно авторизоваться.

Настройка в среде Windows

Для настройки VPN в среде Windows (Windows 2000 и Windows 2003) используется служба RRAS (Routing and Remote Access Service).

Для ее настройки используется пункт меню (Control Panel | Administrative Tools | Routing and Remote Access service). Выбрав этот пункт, вы попадаете в консоль MMC администрирования данной службы. Вам необходимо нажать правой кнопкой на имя компьютера и выбрать “Configure and Enable Routing and Remote Access” и следовать шагам помощника.

После окончания работы помощника будет настроена базовая конфигурация службы RRAS. Для настройки адреса Radius-сервера надо нажать правой кнопкой на имя компьютера, вызвать свойства объекта. На вкладке Security в поле Authentication provider выбрать RADIUS Authentication и нажать кнопку Configure. Далее внести адрес radius-сервера в список и нажать OK. То же самое повторить с полем Radius Accouting.

На этом базовая конфигурация сервера доступа закончена. Для получения более подробной информации пользуйтесь справочной системой консоли RRAS и документацией на сайте .

Настройка на Cisco

Примерный вариант конфигурационного файла на маршрутизаторе Cisco, версия IOS - IOS (tm) 3600 Software (C3620-IS-M), Version 12.3(3a), RELEASE SOFTWARE (fc2):

!

vpdn enable

Настройка VPN

207

vpdn-group 1

! Default PPTP VPDN group accept-dialin protocol pptp virtual-template 1

!

!

interface Virtual-Template1 ip address 192.168.20.1 255.255.255.0 ip tcp header-compression ip mroute-cache no peer default ip address ppp authentication ms-chap-v2 chap

!

radius-server host 10.0.0.1 auth-port 1812 acct-port

1813

radius-server key secret

При этом маршрутизатор будет принимать подключения от клиентов с авторизацией по MS CHAP версии 2 либо CHAP и авторизацией на сервере RADIUS 10.0.0.1.

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

Настройка VPN

Router#show vpdn session %No active L2TP tunnels %No active L2F tunnels

PPTP Session Information Total tunnels 1 sessions 1

LocID RemID TunID Intf Username State Last

Chg Uniq ID

10 32768 11 Vi3 vpn_netup estabd

00:00:23 9

Настройка компьютера клиента на работу с VPN

Пример приведён для установленной ОС Windows 2000.

Откройте раздел «Сетевые соединения» («Network Connections»). Выберите создание нового соединения: «Добавить новое соединение» («Create a new connection»).

Личный кабинет


адрес или имя сервера VPN. Например, vpn. local.

Личный кабинет


radius.so. Чтобы сделать это, необходимо указать путь к файлу модуля в конфигурационном файле utm5.cfg, либо произвести загрузку этого модуля в интерфейсе администратора.

Схема сетевого комплекса для предоставления коммутируемого доступа с авторизацией по протоколу RADIUS.

Интернет
Коммутатор
Cisco 2511 П
п

—ГГ=,
Пользователи
При этом предоставляться будет услуга типа «Коммутируемый доступ» с динамическим IP-адресом. Для добавления этой услуги в интерфейсе администратора выберите меню (Тарификация | Услуги | Добавить). Укажите стоимость 1 часа соединения для разных времени суток и дней недели, а также название IP-пула, из которого будут выдаваться IP-адреса клиентам. Пул IP при этом должен быть сконфигурирован на сервере доступа.

В случае если устройство не поддерживает IP-пулы (например, программный сервер доступа), необходимо сконфигурировать пул в разделе (Настройки | IP-пулы).

Настройка коммутируемого доступа

Личный кабинет


параметров» можно указать дополнительные атрибуты RADIUS, которые будут передаваться в пакете Access-Accept при успешной авторизации пользователя. Можно указать в числовом виде:

• код вендора;

• код атрибута;

• значение атрибута;

• признак строки либо числового значения.

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

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

Личный кабинет


up это значение будет сравниваться с радиус атрибутом Calling-Station-Id (31). Обычно в этом атрибуте содержится адрес вызывающей станции (компьютера клиента). В случае VPN это может быть IP-адрес, в случае PPPoE это может быть MAC-адрес, в случае Dial-up это может быть телефонный номер вызывающего абонента. Ответственность за заполнение этого поля полностью лежит на сервере доступа. Если не будет найдено совпадения между значением указанным в поле «Разрешённые CID» и тем, что указано в радиус атрибуте Calling-Station-Id, то авторизация не пройдёт и пользователь не сможет воспользоваться услугой. При сравнении данное поле рассматривается как регулярное выражение. Регулярные выражения строятся по следующим основным правилам: Л - начало строки; $ - конец строки; [0-9] - цифры от 0 до 9; {n} означает, что предыдущее объявление должно повторяться ровно n раз; (x|y) означает, что в этом месте может находиться либо х, либо у.

Для примера разберём шаблон Л5409652$. Данный шаблон указывает, что номер вызывающей станции (радиус атрибут Calling-Station-Id) должен быть полностью равен значению «5409652». Владелец номера 5409652 сможет воспользоваться данной услугой, а владелец номера 70955409652 — нет.

Настройка коммутируемого доступа

Настройка коммутируемого доступа

В качестве другого примера разберем шаблон 5409652. В этом примере не указаны открывающий символ Л и закрывающий символ $, поэтому номер вызывающей станции может содержать значение «5409652». Такие номера, как 70955409652 или 78125409652 будут подходить под этот шаблон, и владельцы этих номеров смогут воспользоваться данной услугой.

В случае если необходимо задать несколько разрешённых номеров, то можно задать шаблон в виде Л(5409652|5409653 )$. В этом случае при сравнении будет проверяться совпадение с номером 5409652 либо номером 5409653.

В случае если указано поле «Разрешённые CSID», то при подключении пользователя по VPN либо коммутируемому соединению это значение будет сравниваться с атрибутом RADIUS Called-Station-Id (30). Обычно в этом атрибуте содержится адрес вызываемой станции (адрес сервера доступа). В случае Dial-up это может быть телефонный номер провайдера, который клиенты набирают при подключении. Данное поле рассматривается, как регулярное выражение, по тем же правилам, что и для поля «Разрешённые CID».

Также необходимо добавить в систему сервер доступа, к которому будет осуществляться подключение. Это можно сделать в разделе «Настройки, Список NAS, Добавить».

Личный кабинет


IS-L), Version 12.3(3).

aaa new-model

aaa authentication password-prompt password: aaa authentication username-prompt login: aaa authentication login default local aaa authentication ppp default group radius

Настройка коммутируемого доступа

Настройка коммутируемого доступа

aaa authorization exec default local

aaa authorization network default group radius

aaa accounting delay-start aaa accounting network default start-stop group radius

!

interface Group-AsyncO ip unnumbered EthernetO encapsulation ppp async mode interactive peer default ip address pool TEST ppp authentication pap group-range 1 16

!

interface EthernetO ip address 192.168.O.2 2 55.255.255. O no ip mroute-cache

!

ip local pool TEST 172.16.O.2 172.16.O.254 ip classless

ip route O.O.O.O O.O.O.O 192.168.O.1 no ip http server

async-bootp dns-server 195.161.112.6

!

radius-server host 192.168. O.3 auth-port 1812 acct-port 1813

radius-server retransmit 3 radius-server key mysecret

!

line 1 16

script modem-off-hook offhook script callback callback modem InOut

modem autoconfigure type usr_sportster

transport input all autoselect during-login autoselect ppp speed 115200

!

end

Дополнительная информация

RFC-2138: .

RFC-2139: .

Пакет PoPToP: .

Настройка коммутируемого доступа

Автоматическая регистрация пользователей

Автоматическая регистрация пользователей

В UTM предусмотрены два варианта активации предоплаченных интернет-карт для получения услуги коммутируемого доступа: через гостевой доступ и через обычный доступ с автоматической регистрацией пользователя. В первом случае пользователь, соединяясь впервые, использует известный ему гостевой логин и пароль и регистрируется в системе. После регистрации он заходит в систему, используя свои собственные параметры доступа. Во втором случае пользователь вводит номер и пин-код своей карточки в качестве логина и пароля для коммутируемого соединения, его регистрация производится автоматически, и пользователь сразу же получает доступ в интернет.

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

Личный кабинет


карт и привязать их к созданному тарифному плану.

Гостевой доступ

В случае реализации гостевого доступа необходимо создать пользователя, логин и пароль которого будут известны всем перед регистрацией. Например, логин guest и пароль guest.

Гость должен быть настроен таким образом, чтобы иметь возможность только получать доступ с сайту для активации интернет-карт. Время соединения также может быть ограничено, например, 600 секундами.

Необходимо создать услугу «Коммутируемый доступ» со следующими параметрами: пул - GUEST, максимальный таймаут соединения - 600 сек., стоимость соединения - 0 у. е. в час.

Личный кабинет


адресов с именем GUEST и адресами из определённого диапазона, например, 172.16.0.0/16. Маршрутизатор необходимо настроить таким образом, чтобы клиенты из этого диапазона адресов могли получать доступ только к веб-серверу, на котором производится активация карт, и серверу DNS. В целях безопасности рекомендуется организовать отдельный сервер DNS, который не связан с интернетом, и содержит только записи, необходимые клиенту для доступа к веб-серверу регистрации.

Личный кабинет


сервер регистрации интернет-карт абонент выбирает пункт меню «Авторегистрация пользователя» и вводит данные, указанные на интернет-карте. Если все данные введены корректно, и карта не была активирована прежде либо заблокирована, то в UTM автоматически будет создан новый карточный пользователь, и абонент получит информацию о логине и пароле для подключения по коммутируемым линиям. Выбирая пункт меню «Вход в UTM» на странице регистрации и указав логин и пароль, выданные системой после регистрации, абонент может получить доступ к своему личному кабинету, где для него доступна статистика его лицевого счёта.

Доступ с автоматической регистрацией

Для реализации моментального доступа по интернет-картам требуется дополнительная настройка сервера RADIUS. В конфигурационном файле сервера RADIUS /netup/utm5/radi-us5.cfg необходимо указать опцию

radius_card_autoadd=yes

После перезапуска сервер RADIUS будет автоматически регистрировать пользователя в UTM при первой попытке доступа по предоплаченной карте.

Для получения доступа, абонент должен указать номер интернет-карты в качестве логина и её пин-код в качестве пароля. Если пользователь подключается по этой карте впервые, то сервер RADIUS произведёт автоматическую регистрацию, и абонент моментально получит доступ в интернет. Каждый раз при подключении пользователь указывает номер карты, как логин, и пин-код - как пароль. После того, как баланс карты истечёт, пользователь должен активировать новую карту.

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

При правильно настроенном доступе с автоматической регистрации пользователя при первом входе в журнале сервера RADIUS должны появиться следующие записи:

?Debug : Oct 27 12:08:00 RADIUS Auth: Packet from

?Debug : Oct 27 12:08:00 RADIUS Auth: User <5> connecting

ERROR : Oct 27 12:08:00 RADIUS DBA: Can't find login <5>

ERROR : Oct 27 12:08:00 RADIUS DBA: Can't find card login <000000005>

?Debug : Oct 27 12:08:00 RADIUS Auth: Attempt to add new Card user: <5>

?Debug : Oct 27 12:08:00 RADIUS DBA: Sending Auto-Add Request for Card-ID: 5

?Debug : Oct 27 12:08:00 RADIUS URFA[plugin]: DLink: SLID/SID/AID: 14/6/14

?Debug : Oct 27 12:08:00 RADIUS URFA[plugin]: Account <14> with balance <10.000>

?Debug : Oct 27 12:08:00 RADIUS Auth: Got AutoAdd 14 UID from core.

ERROR : Oct 27 12:08:00 RADIUS DBA: Can't find login <5>

?Debug : Oct 27 12:08:00 RADIUS DBA: login_store iter->second.dialup.session_count:0

Info : Oct 27 12:08:00 RADIUS Auth: User <5> added.

?Debug : Oct 27 12:08:00 RADIUS Auth: Auth scheme:

PAP

?Debug : Oct 27 12:08:00 RADIUS Auth: PAP: <51154755> vs <51154755>

?Debug : Oct 27 12:08:00 RADIUS Auth: PAP: Authorized user <5>

?Debug : Oct 27 12:08:00 RADIUS Auth: Dialup session limit:0 session count:0 for user:5

?Debug : Oct 27 12:08:00 RADIUS Auth: Calculated maximum session time: 36000

Автоматическая регистрация пользователей

Автоматическая регистрация пользователей
Личный кабинет


date called for slink:14

?Debug : Oct 27 12:08:00 RADIUS DBA: soft dialup_ link_update for slink:14 session_count:1

Контрольный пример

Контрольный пример предназначен для проверки корректности функционирования биллинговой системы NetUP UTM на вашем сервере. Суть проверки заключается в загрузке в базу данных параметров трех клиентов и эмулирования работы этих пользователей в течение трёх месяцев. Необходимые данные для запуска контрольного примера находятся на CD-ROM с биллинговой системой NetUP UTM.

Внимание. Остановите сервисы критичные к изменению даты на сервере.

Остановите ядро биллинговой системы utm5_core.

Установите дату на сервере на 00 часов 00 минут 1 апреля 2003 года.

Для FreeBSD:

date 0304010000

Для Linux:

date 0401000003

Для загрузки данных в базу выполните команды.

Контрольный пример

mysqladmin drop UTM5 mysqladmin create UTM5

mysql UTM5 < UTM5_MYSQL_kp_dialup.sql mysql -f UTM5 < UTM5_MYSQL_update.sql

Произведите корректировку данных в файле kp_dialup.pl о том, на каком порту принимает Radius Accounting-пакеты процесс utm5_radius, а также путь к программе-генератору RADIUS-пакетов - utm5_radgen (обычно /netup/utm5/bin/ utm5_radgen).

Запустите ядро биллинговой системы utm5_core и сервер RADIUS utm5_radius.

Запустите программу kp.pl командой.

Контрольный пример

perl kp_dialup.pl

В процессе работы программы дата на сервере будет меняться с 1 апреля 2003 г. до 1 июля 2003 г. Таким образом, будет эмулирована работа тестовых пользователей в течение трёх месяцев: апреля, мая, июня 2003 г.

В случае корректной работы биллинговой системы, полученные вами цифры после отработки kp_dialup.pl должны совпадать с указанными в таблицах.

После проведения работ установите корректную дату на сервере.

Первый месяц (апрель 2003 г.). Количество дней - 30.
dialup 1 dialup 2 dialup 3
8.00

19.59
20.00

7.59
8.00

19.59
20.00

7.59
8.00

19.59
20.00

7.59
Длительность в день, час 0,1 0,1 0,2 0,2 0,3 0,3
Объем за месяц, час 3 3 6 6 9 9
Стоимость,

у.е./час
1 2 1 2 1 2
Стоимость,

у*е.
3 6 6 12 9 18
Абонплата 10 10 10
Остаток -19 -28 -37
Второй месяц (май 2003 г.). Количество дней - 31.
dialup 1 dialup 2 dialup3
8.00

19.59
20.00

7.59
8.00

19.59
20.00

7.59
8.00

19.59
20.00

7.59
Длительность в день, час 0,1 0,1 0,2 0,2 0,3 0,3
Объем за месяц, час 3,1 3,1 6,2 6,2 9,3 9,3
Стоимость,

у.е./час
1 2 1 2 1 2
Стоимость,

у.е.
3,1 6,2 6,2 12,4 9,3 18,6
Абонплата 10 10 10
Остаток -19,3 -28,6 -37,9
Контрольный пример

Третий месяц (июнь 2003 г.). Количество дней - 30.
dialup 1 dialup 2 dialup3
8.00

19.59
20.00

7.59
8.00

19.59
20.00

7.59
8.00

19.59
20.00

7.59
Длительность в день, час 0,1 0,1 0,2 0,2 0,3 0,3
Объем за месяц, час 3 3 6 6 9 9
Стоимость,

у.е./час
1 2 1 2 1 2
Стоимость,

у*е.
3 6 6 12 9 18
Абонплата 10 10 10
Остаток -19 -28 -37
Итого остаток -57,3 -84,6 -111,9
Контрольный пример

В случае корректной работы биллинговой системы, полученные вами цифры после отработки kp.pl должны совпадать с указанными в таблице.

После проведения работ установите корректную дату на сервере.

Модуль телефонии

Модуль IP-телефонии

Модуль IP-телефонии представляет собой сервер NetUP RADIUS и предназначен для обработки запросов на авторизацию и учёт потребленных услуг от голосовых шлюзов, гейткиперов (gatekeepers), голосовых прокси-серверов.

Сервер NetUP RADIUS - это приложение, которое в реальном времени обрабатывает поступающие к нему запросы по протоколу Remote Authentication Dial In User Service (RADIUS) - RFC 2138 и RFC 2139.

При обработке запросов сервер NetUP RADIUS обращается к ядру системы по протоколу URFA.

Более подробное описание протокола RADIUS можно найти в разделе «Модуль коммутируемых и VPN-соединений».

Терминология

ір -телефония (IP telephony)

Модуль IP-телефонии

Общий термин, означающий передачу речи по сетям с использованием протокола IP. Так же для обозначения этой технологии используются термины: Voice over IP (VoIP), Internet Telephony.

ТфОП (PSTN)

Сокращение от словосочетания «телефонная сеть общего пользования». В это понятие включены городские и национальные сети обычной телефонии. Также используется термин PSTN - сокращение от «Public Switched Telephony Network».

АОН (Caller ID)

Номер вызывающего абонента. Также используется термин ANI - сокращение от «Automatic Number Identification». Часто услуга определения номера вызывающего абонента называется АОН.

Шлюз IP -телефонии (VoIP gateway)

Устройство, имеющее порт для подключения к сети на базе протокола IP, а также по необходимости порты для подключения к ТфОП. Обычно данное устройство служит для стыковки ТфОП и IP-сети.

Примером устройства данного типа может служить маршрутизатор Cisco 3620 с модулем NM-2V + VIC2FXO.

IP-телефон

Телефонный

номер: 9391000

Ethernet switch

ІР-адр?с: 10.0.0.2

Телефонный номер 100

Городская АТС

Шлюз ?СИР

IP-адрес: 10.0.0.1

Компьютер с установленным программным ІР-т?л?фоиом

Р-аорес 10 0 0 3

Телефонный номер: 200

При таком подключении шлюз организует преобразование голосового трафика из сети на базе протокола IP в ТфОП. Таким образом, пользователь с IP-телефоном либо компьютером с установленным программным телефоном (Microsoft NetMeet-ing, OpenPhone и др.) может вызывать абонента городской телефонной сети (ТфОП).

Модуль IP-телефонии

Аналогично и в обратную сторону: абонент городской телефонной сети (ТфОП) может вызывать абонента в сети с протоколом IP. Для этого необходимо набрать номер шлюза в сети ТфОП (на схеме это 9391000) и затем после авторизации (если этот механизм включен на шлюзе) набрать внутренний номер абонента в сети с протоколом IP (на схеме это номера 100 и 200).

H.323

Стандарт, предложенный Международным союзом электросвязи (ITU-T), описывающий построение сетей IP-телефонии. Стандарт описывает протоколы, связанные с регистрацией оборудования IP-телефонии (RAS - Registration, Admission

and Status), установления соединения (H.225.0, H.245), передачи речи, авторизации пользователей и др.

H.323 привратник (H.323 гейткипер, H.323 gatekeeper)

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

К другому оперт ору ІР-

нпнфонии

ШПЮЯ VdP 2

ІР-адр?с: 10.0.0.5

Телефонный

номер: 9391000

Ethe те I switch

IP-телефон

IP-адрес: 10.0 0.2

Телефонный

номер 100

городская АТС

Шлюз VoР

ІР-адрес: 10.0.0.1

Н 323 привратник

ІР-адрес: 10.0.0.4

Компьютер с установленным

программным ІР-телефоном

ІР-адр?с: 10.0 0 3

Телефонный

номер: 200

В такой схеме все устройства сети должны зарегистрироваться на привратнике. При этом авторизация может проводиться по протоколу RADIUS с использованием стандартной схемы Access-Request.

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

Модуль IP-телефонии

и передать заполненные атрибуты Called-Station-Id (набранный номер) и Calling-Station-Id (номер вызывающего абонента). При этом сервер RADIUS проверяет баланс пользователя, тарифный план на вызываемое направление, и если все вычисления прошли успешно, то передает пакет Ac-cess-Accept, в котором может указать максимальное время соединения для данного пользователя по данному направлению. Обычно эта информацию указывается в атрибуте h323-credit-time, vendor 9 (Cisco).

В случае, если авторизация прошла успешно, после согласования всех параметров устанавливается соединение между вызываемым и вызывающим терминалами. При этом привратник передает на сервер RADIUS пакет о начале соединения (Accounting-Start), в котором указывает параметры установленного соединения.

Модуль IP-телефонии

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

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

Кодеки

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

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

Название кодека Поток, Кбит/сек Качество
G.711 64 Высокое
G.72.3.1 5.3 - 6.4 Среднее
G.729_ _8_ Среднее_
IVR

Сокращение от «Interactive Voice Response». Представляет собой технологию голосовых меню и часто используется для авторизации пользователей ТфОП для звонков по IP-телефонии. При этом используется следующая последовательность шагов.

1. Абонент ТфОП набирает городской номер доступа оператора IP-телефонии. При этом трубку поднимает шлюз IP-телефонии (например, Cisco 3640 с платой Е1), подключенный к этой линии.

Модуль IP-телефонии

2. Шлюз загружает звуковой файл (обычно расширение у файлов .au) с записанным приглашением и проигрывает его абоненту. При этом обычно предлагается ввести номер и пин-код предоплаченной телефонной карты.

3. После ввода определённого количества цифр производится авторизация с введенными данными на сервере RADIUS. При этом номер карты обычно записывается в атрибут 1 (UserName), а пин-код - в атрибут 2 (Password).

4. В случае успешной авторизации сервер RADIUS присылает пакет Access-Accept, в котором указывает количество оставшихся средств на счету. Для этого используются атрибуты h323-credit-amount и h323-currency с vendor=9 (Cisco). Шлюз IP-телефонии загружает соответствующие голосовые файлы и проигрывает абоненту остаток средств на счету и предлагает ввести номер, по которому необходимо выпол-

Модуль IP-телефонии

нить вызов. Следует заметить, что в основном IP-телефония выгодна для звонков на большие расстояния (междугородние и международные звонки).

5. После ввода номера производится повторная авторизация на сервере RADIUS, при этом дополнительно передается атрибут Called-Station-Id, в котором записывается набранный номер. В зависимости от остатка средств на счету и стоимости минуты соединения по этому направлению сервер RADIUS вычисляет максимальное время сессии и передает вычисленное время в пакете Access-Accept в атрибуте h323-credit-time.

6. После получения положительного ответа от сервера RADIUS шлюз IP-телефонии устанавливает соединение с вызываемым абонентом. Соединение будет разорвано, если длительность сессии составит количество секунд, вычисленное на предыдущем шаге.

7. При установлении соединения на сервер RADIUS отсылается пакет Accounting-Start, при разрыве - пакет Accounting-Stop.

Настройка сервера

Установка и запуск H323 гейткипера

Для установки загрузите установочный пакет с . gnugk.org/h323download.html для вашей операционной системы (доступны версии под FreeBSD, Linux, Windows, Solaris) и установите согласно инструкциям.

Гейткипер можно также установить из исходных кодов. Для этого необходимо загрузить библиотеку PWLib, доступную по адресу и установить её командами:

tar xvfz pwlib_1_5_2.tgz cd pwlib ./configure gmake

gmake install

Загрузить пакет Openh323 можно по адресу . openh323.org/bin/openh323_1.12.2.tar.gz.

Он устанавливается командами:

Настройка сервера

tar xvfz openh323_1_12_3.tgz cd openh323 ./configure gmake

gmake install

Загрузить пакет openh323gk можно по адресу . gnugk.org/download/gnugk-2.2beta2.tgz.

Он устанавливается командами:

tar xvfz gnugk-2.2beta2.tgz cd openh323gk export HAS_ACCT=1 ./configure gmake

Конфигурационный файл /etc/opengk.ini

Подробное описание опций можно найти в документе http:// .

Ниже приведён пример конфигурационного файла /etc/ opengk.ini с кратким описанием.

[Gatekeeper::Main]

Fourtytwo=42

TimeToLive=600

Name=localhost

[RoutedMode]

GKRouted=1

[RasSrv::GWPrefixes] cisco=5,8,9

Префиксы телефонных номеров (E.164), которые будут перенаправляться на шлюз, зарегистрированный под именем cisco. В данном примере номера, начинающиеся на 5, 8 и 9 будут перенаправляться на шлюз. При этом шлюз должен сам зарегистрироваться на гейткипере. [RasSrv::PermanentEndpoints]

Настройка сервера

212.1.1.1=voip;1,2,3

Префиксы телефонных номеров (E.164), которые будут перенаправляться на шлюз с адресом 212.1.1.1. В данном примере номера, начинающиеся на 1, 2 и 3 будут перенаправляться на этот шлюз. При этом шлюз не должен сам регистрироваться на гейткипере.

[GkStatus::Auth]

rule=allow

[Gatekeeper::Acct]

RadAcct=required;start,stop

default=allow

[RadAcct]

Servers = 127.О.0.1:1813 ;

IP-адрес и порт, на котором принимает соединения сервер NetUP RADIUS.

LocalInterface=

RadiusPortRange=10000-11000

DefaultAcctPort=1813

SharedSecret=secret

RequestTimeout=3500

IdCacheTimeout=9000

SocketDeleteTimeout=60000

RequestRetransmissions=4

RoundRobinServers=1

AppendCiscoAttributes=1

IncludeEndpointIP=1

FixedUsername=

[Gatekeeper::Auth]

RadAliasAuth=required;RRQ,ARQ

default=allow

Настройка сервера

[RadAliasAuth]

Servers=127.0.0.1:1812;

IP-адрес и порт, на котором принимает соединения сервер NetUP RADIUS.

LocalInterface=

RadiusPortRange=10000-11000

DefaultAuthPort=1812

SharedSecret=secret

RequestTimeout=2000

IdCacheTimeout=9000

SocketDeleteTimeout=60000

RequestRetransmissions=2

RoundRobinServers=1

AppendCiscoAttributes=1

IncludeTerminalAliases=1

IncludeEndpointIP=1

FixedUsername=

FixedPassword=

[CallTable]

DefaultCallDurationLimit=3600

[Proxy]

Enable=1

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

При таких настройках гейткипер будет проводить авторизацию при каждом звонке через сервер RADIUS (порт 1812). Статистика звонков будет передаваться на сервер RADIUS (порт 1813).

Запуск гейткипера

Настройка сервера

Запуск гейткипера осуществляется командой:

/usr/local/bin/gnugk -c /etc/opengk.ini -o /var/log/ gnugk.log -ttttt &

Протоколирование работы гейткипера будет вестись в файл /var/log/gnugk.log. За работой гейткипера можно наблюдать, подключившись по протоколу telnet на порт состояния командой telnet 127.0.0.1 7000

Настройка Cisco ATA-186

В настройках ATA-186 необходимо указать следующие параметры

UID0: 100

Первый телефонный номер.

UID1: 200

Второй телефонный номер.

GkOrProxy: 10.1.2.105 Адрес гейткипера.

LoginID0: test1

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

LoginID1: test2

LBRCodec:3

RxCodec:3

TxCodec: 3

ConnectMode: 0x00060403

UseSIP: 0

Настройка Cisco ATA-186

Настройка шлюза VoIP на базе Cisco 26xx, 36xx, 53xx

Настройка шлюза VoIP на базе Cisco 26xx, 36xx, 53xx

Пример приведен для Cisco 3640 IOS 12.2(11)T8 с контроллером E1.

aaa accounting connection h323 start-stop group radius

j

controller El 1/0 pri-group timeslots 1-31

j

j

voice class codec 1 codec preference 1 g729r8 codec preference 2 g711ulaw codec preference 3 g723r63

j

j

gw-accounting aaa acct-template callhistory-detail

j

j

interface Ethernet0/1 ip address 21.1.1.1 255.255.255.252 no ip mroute-cache full-duplex no cdp enable

h323-gateway voip interface

h323-gateway voip id GK ipaddr 21.1.1.2 1718 h323-gateway voip h323-id cisco

j

j

interface Serial1/0:15 no ip address

no logging event link-status isdn switch-type primary-net5 isdn protocol-emulate network isdn incoming-voice voice

isdn map address .* plan isdn type subscriber isdn calling-number xxxxxx no isdn outgoing display-ie no cdp enable

dial-peer voice 2 pots destination-pattern T direct-inward-dial port 1/0:15 prefix 96

!

gateway

!

dial-peer voice 4 voip destination-pattern 100 voice-class codec 1 session target ras

Для звонков через Microsoft NetMeeting также следует указать следующие команды:

!

voice service voip h323

h245 tunnel disable h245 caps mode restricted

!

В настройках аудио программы NetMeeting необходимо выбрать кодек CCITT u-Law, 8,000 KHz; 8Bit;Mono.

Настройка шлюза VoIP на базе Cisco 26xx, 36xx, 53xx

Настройка UTM

Создание направлений и зон

Для определения направления звонка используются регулярные выражения. Строка (префикс) задает шаблон, по которому определяется, в какой город либо страну производится вызов. Направления и префиксы можно задать в интерфейсе администратора в разделе (Тарификация | Телефонные направления).

Личный кабинет


начало строки.

$ - конец строки.

[0-9] - цифры от 0 до 9.

{n} означает, что предыдущее объявление должно повторяться ровно n раз.

(x|y) означает, что в этом месте может находиться либо х, либо у.

Для примера разберем шаблон Л7095[0-9]{7}$, который определяет направление «Москва». Он означает, что телефонный номер должен начинаться с четырёх цифр 7 0 95, за которыми следуют ровно семь любых цифр, после чего номер должен заканчиваться. Например, под этот шаблон попадают номера 70955409652 и 70959391000.

Аналогично для шаблона Л7(901|903|905|916|917)[0-9]{7}$, который определяет направление «Россия (мобильные сети)». Он означает, что телефонный номер должен начинаться с цифры 7, затем следует одна из следующих комбинаций цифр: 901,903, 905, 916, либо 917. Затем следуют ровно семь любых цифр, после чего номер должен заканчиваться. Например, под этот шаблон попадают номера 79167772233 и 79161112233.

В дальнейшем при проведении поиска UTM сортирует все направления в порядке уменьшения длины шаблона, т. е. в самом начале списка окажутся направления с наиболее длинными шаблонами. Поиск производится до первого совпадения.

Пример

Созданы следующие направления:

Идентификатор Название Шаблон
направления направления
1 Россия Л7
2 Москва л7095
3 МТС (моб.) л7 916
Настройка UTM

При этом осуществляется два тестовых звонка по номеру 7916-7777777 и номеру 7-812-8888888. Для первого звонка будет определено направление 3 - МТС (моб.). Для второго звонка будет определено направление 1 - Россия.

Создание услуги IP-телефонии

Необходимо создать услугу с типом «Телефония» и указать дату начала предоставления услуги и дату окончания.

Личный кабинет


секунды.

Длительность начального периода

Период в начале звонка, в течение которого действует округление до значения указанного в поле «Шаг начального периода». Размерность - секунды.

Шаг начального периода

Шаг округления в начальном периоде. Размерность - секунды.

Шаг последующего периода

Шаг округления, действующий после завершения начального периода. Размерность - секунды.

Размер единицы тарификации

Данное поле указывает количество секунд в единице тарификации. Стоимость в списке цен указывается для единицы тарификации. Обычно единицей тарификации служит минута и, следовательно, в данном поле необходимо указывать значение 60 секунд.

Личный кабинет


> «Границы». В поле «Граница» задается количество секунд, после которых начинает действовать указанный коэффициент. Количество секунд вычисляется как сумма потребленных услуг с начала расчетного периода по данному направлению. Стоимость вычисляется как значение, указанное в поле «Стоимость» умноженное на «Коэффициент».

5. Проведение списания с лицевого счета за звонок и запись в базу данных информации о звонке (длительность, стоимость, номера вызываемого и вызывающего абонента, идентификатор сессии и др.)

Пример 1

Длительность начального периода 60 секунд, шаг округления начального периода 5 секунд, шаг округления последующего периода 1 секунда. Бесплатное время 5 секунд. Размер единицы тарификации равен 60 секундам.

Длительность звонка составляет 42 секунды при стоимости

0. 1.условных единиц за единицу тарификации в данное время суток по данному направлению.

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

1. Вычитание бесплатного порога в 5 секунд. Для тарификации остается 42 -5 = 37 секунд.

Настройка UTM

2. Определение шага округления. В данном случае 37 секунд попадают в начальный шаг, поэтому округление ведется до полных 5 секунд. Следовательно, после округления стоимость будет вычисляться для 40 секунд.

3. Вычисление стоимости звонка по формуле 0.1 * 40/60 = 0,0667 условных единиц.

Пример 2

Длительность начального периода 60 секунд, шаг округления начального периода 60 секунд, шаг округления последующего периода 1 секунда. Бесплатное время 0 секунд. Размер единицы тарификации равен 60 секундам.

Настройка UTM

Длительность звонка составляет 42 секунды при стоимости

0.1 условных единиц за единицу тарификации в данное время суток по данному направлению.

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

1. Вычитание бесплатного порога в 0 секунд. Для тарификации остается 42 -0 = 42 секунд.

2. Определение шага округления. В данном случае 42 секунд попадают в начальный шаг, поэтому округление ведется до полных 60 секунд. Следовательно, после округления стоимость будет вычисляться для 60 секунд.

3. Вычисление стоимости звонка по формуле 0.1 * 60/60 = 0,1 условных единиц.

Настройка сервера RADIUS

Необходимо запустить сервер NetUP RADIUS. Затем указать корректные параметры для сервера доступа (NAS), в качестве которого выступает гейткипер на localhost (если UTM и гейткипер находятся на одном сервере).

Пример

Идентификатор сервера доступа (NAS ID): localhost

Секретное слово для авторизации (Auth secret): secret

Секретное слово для учета (Acct secret): secret

В результате сервер RADIUS будет авторизовать пользователей при звонках в обе стороны.

Настройка сервера tftp

Загрузить сервер tftp можно по адресу ftp://ftp.kernel.org/ pub/software/network/tftp/tftp-hpa-0.34.tar.bz2.

Настройка сервера RADIUS

Далее необходимо его установить командами:

tar xvfj tftp-hpa-0.34.tar.bz2 cd tftp-hpa-0.34 ./configure gmake

gmake install

Создайте директорию, где будут находиться файлы, доступные по tftp.

mkdir /netup/tftp

Произведите запуск сервера tftp командой

/usr/sbin/in.tftpd -l -s /netup/tftp

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

/etc/rc.local.

Настройка шлюза VOIP при дебетной (карточной) системе оплаты

Необходимо указать, расположение TCL-скрипта для обработки системы голосовых сообщений (IVR), расположение голосовых файлов и длину номера и пин-кода карты.

!

call application voice debit tftp://10.1.2.2/ debitcard.1.1.3.tcl

call application voice debit uid-len 4 call application voice debit pin-len 6 call application voice debit language 1 en

call application voice debit set-location en 0 tftp://10.1.2.2/prompts/en/

Настройка сервера RADIUS

Введённые пользователем при авторизации первые четыре цифры (uid-len) будут использоваться, как логин, а последующие шесть цифр (pin-len) - как пароль.

Если скрипт загрузился успешно, то по команде

sh call application voice debit

можно увидеть содержание файла скрипта.

В настройках dial-peer нужно указать использование этого скрипта:

!

dial-peer voice 2 voip application debit

!

Необходимо задать параметры aaa: aaa authentication login h323 group radius aaa authorization exec h323 group radius

aaa accounting connection h323 start-stop group ra dius

!

!

gw-accounting aaa

!

radius-server vsa send accounting radius-server vsa send authentication

В результате таких настроек шлюз VoIP будет запрашивать номер (номер и пин-код) карты, затем проводить авторизацию по протоколу RADIUS. При успешной авторизации сервер RADIUS в VSA-атрибутах (h3 23-credit-amount/h323-cur-rency) отсылает текущий баланс пользователя и код валюты. Затем шлюз запрашивает направление звонка и после ввода заново проводит авторизацию через сервер RADIUS. При этом сервер отсылает количество секунд (атрибут h323-cred-it-time), доступных для разговора по данному направлению. Если всё прошло успешно, то производится попытка установить соединение согласно настройкам.

По окончании разговора шлюз отсылает серверу RADIUS пакет Accounting STOP с указанием времени разговора.

Настройка сервера RADIUS

Совместная работа Alterteks ProxySoftSwitch и UTM

Совместная работа Alterteks ProxySoftSwitch и UTM

Выдержка с сайта :

«Alterteks Proxy SoftSwitch (AlterPSS) - это программный переключатель (или коммутатор), позволяющий направлять сигналы и голосовой трафик с одного шлюза IP-телефонии на другой, или пропускать данные через себя (проксировать). При этом управляющие сигналы могут исправляться или полностью изменяться софт-свичом. Таким образом, появляется возможность установки соединения между оборудованием, использующим несовместимые протоколы...»



    Безналичный оборот: Деньги - Расчеты - Карты