Документация по версии 1.4
Содержание
- 1 Введение
- 2 Системные требования
- 3 Поддерживаемые ОС
- 4 Обзор возможностей
- 5 Структурно-логическая схема работы системы
- 6 Структура директорий
- 7 Принцип работы с IPN абонентами(Не актуально для 1.4. В работе.)
- 8 Установка и начальная настройка
- 9 Установка клиентской части
- 10 Защита от нелегального копирования =
Введение
Руководство будет полезно как профессионалам, имеющим опыт работы с биллинг-системами, так и пользователям, впервые сталкивающимся с подобными программными комплексами.
Для опытных пользователей порекомендуем ознакомиться с особенностями развертывания системы (раздел «Установка и предварительная настройка»), а затем обратиться к разделу «Решение задач», при необходимости уточняя детали в соответствующих подразделах раздела «Использование системы».
Если вы ранее не занимались настройкой и эксплуатацией подобных систем, советуем вам продолжить чтение по порядку. В случае необходимости, уточняйте значение терминов в глоссарии («Приложение 1»).
Для каждого из разделов системы («Тарифные планы», «Периоды тарификации» и т.п.) описываются особенности их реализации и назначение, интерфейс, а также при необходимости приводятся примеры использования возможностей Expert Billing Admin. Раздел «Решение задач» целиком состоит из пошаговых руководств по решению типовых задач.
Общая информация о биллинг-системах
В современном мире ресурсы каналов интернет-доступа остаются ограниченными, поэтому поставщики услуг (провайдеры) стремятся добиться максимальной эффективности использования доступных интернет-мощностей.
Достичь высокой эффективности невозможно без гибкого управления потреблением интернет-услуг. Для учета и контроля объемов потребленных услуг интернет-доступа используются специализированные системы, которые на основе анализа сетевой статистики отслеживают активность (трафик) каждого пользователя и, в соответствии с установленными правилами, преобразуют её в единицы тарификации (как правило, деньги). Этот процесс называется тарификацией.
Системы биллинга, к которым принадлежит и Expert Billing System, производят учет и тарификацию предоставляемых услуг (в данном случае - интернет-трафика), а также автоматизируют процесс выставления клиентам счетов для оплаты.
Биллинг-системы бывают очень разными и могут классифицироваться по различным признакам: методам авторизации, принципам построения (модульности), особенности сбора статистики и управления серверами доступа.
Один из вариантов классификации современных биллинг-систем представлен на схеме:
В случае с использованием авторизации пользователей, отличной от RADIUS, практически всегда в биллинг встраиваются собственные средства снятия, обработки и записи наработанной статистики. Если же NAS (Network Access Server) и сам биллинг находятся на разных системах, то для снятия статистики используются проверенные средства: alive-пакеты от NAS-сервера, протокол SNMP (Simple Network Monitoring Protocol) либо NetFlow. Использование протокола NetFlow (протокол, разработанный компанией Cisco специально для мониторинга сети) позволяет получать подробнейшую информацию о сетевой активности пользователей. Данный способ сбора статистики является основным для построения мощных и отказоустойчивых систем.
ExpertBilling относится к виду биллинг-систем с логически разделённой системой управления доступом и системой тарификации, хотя они и могут находиться на одном физическом сервере.
Системные требования
Минимальные системные требования позволят запустить биллинг-систему со всеми компонентами и обеспечат работу систем тарификации и управления доступом при объёме абонентской базы в среднем до 100-150 человек. Запись сырой статистики при этом рекомендуется отключить опцией write_flow = False в файле конфигурации ebs_config.ini
Рекомендуемая конфигурация(см.ниже) подойдёт для абонентской базы до 5000 человек при активном использоваии тарификации трафика и лимитов.
Оптимальная конфигурация компьютера для системы Expert Billing System зависит от ширины обслуживаемого биллингом канала и количества активных пользователей.
При решении типовых задач рекомендуется использовать компьютер с процессором, работающем на тактовой частоте не ниже 1 ГГц, снабженный не менее чем 512 МБ оперативной памяти.
Требования к объёму свободного места на диске напрямую зависят от того, насколько активно эксплуатируется система и требуется ли вам хранить NetFlow статистику. В случае хранения этой статистики мы рекомендуем использовать винчестеры объемом от 80 ГБ.
Обратите внимание: требования к объему свободного дискового пространства вызваны тем, что база данных при активном использовании биллинг-системы может значительно увеличиваться в объеме. Для корректной работы ExpertBilling необходимо обеспечить достаточное количество свободного дискового пространства на разделе с базой данных.
Поддерживаемые ОС
- Debian 5.1-6 32-bit
- Ubuntu 9.04-10.10 32-bit. Рекомендуется 10.04
- Ubuntu Server 9.04-10.10 32-bit - Рекомендуется 10.04
- Другие операционные системы на кодовой базе Debian/Ubuntu 32-bit
Использование 64-битных операционных систем не рекомендуется по причине наличия в составе биллинга встроеного оптимизатора, который не будет работать на 64-битной операционной системе. Тем самым будет наблюдаться падение производительности до 300% на некоторых задачах.
Минимальные системные требования
- CPU: 1GHz
- RAM: 512MB
- HDD: 20GB
Рекомендуемая конфигурация
- CPU: 2-4 ядерный процессор от 2 GHz на ядро
- RAM: 4GB
- HDD: >250GB
Обзор возможностей
Expert Billing System позволяет автоматизировать процесс взаиморасчётов провайдера с клиентами. Этот биллинг отличается простым и удобным интерфейсом пополнения счетов, работы с картами экспресс-оплаты (включая возможность их печати прямо из интерфейса администрирования). Также Expert Billing System позволяет производить печать договоров на подключение для физических/юридических лиц и предоставляет интерфейс кассира.
С помощью Expert Billing System можно спроектировать тарифные планы таким образом, чтобы в них пересекались различные виды тарификации: абонентская плата, разовые платежи, списание денег за трафик (с возможностью указать точный период времени и направления трафика), списание денег за время. Система позволяет автоматически начислять и списывать предоплаченный трафик/время в начале каждого расчётного периода, производить доснятие суммы до стоимости тарифного плана, динамически управлять скоростью работы клиента без обрыва соединения и гибко устанавливать лимиты трафика по указанным направлениям с указанием произвольного периода времени.
Применяемая технология управления состоянием пользователя в списках контроля доступа (ACL) на серверах доступа, имеет возможность работы совместно с обычной RADIUS авторизацией. Стоит также отметить, что поведение системы на сервере доступа полностью настраивается. Вы сможете вручную указать, когда и какие действия нужно производить при создании либо удалении клиента, его активации или деактивации, каким образом устанавливать и менять скорость для каждого клиента и разрывать сессии по отдельности для VPN и IPN подключений.
В профиле пользователя предусмотрен расширенный набор полей для хранения всех необходимых данных и дополнительный набор полей для информации о юридических лицах. Предусмотрена возможность кредитования клиентов и указывать размер кредита.
Механизм управления состоянием аккаунтов позволяет отдельно для каждого из видов доступа разрешать или запрещать PPTP/PPPOE/L2TP/OVPN/IPN/DHCP-авторизацию при отрицательном балансе либо наличии блокировок, что может быть удобно, если не требуется ограничивать возможность работы клиентов полностью. В индивидуальном порядке настраиваются разрешения для пользователей по работе с веб-кабинетом и активацией карт экспресс-оплаты.
Expert Billing System позволяет производить привязку аккаунтов к IP либо MAC адресам (в зависимости от способа авторизации и тарифного плана).
Система подключаемых услуг позволяет производить тарификацию дополнительных услуг провайдера, будь-то: файловый сервер, сервис Dr.Web, IPTV и другие.
Ведение абонентской базы
- детальный профиль клиента;
- печать договоров на подключение;
- возможность работы в кредит с установлением размера кредита;
- возможность гибкого ведения нескольких учётных записей в пределах одного аккаунта и договора;
- справочники городов, улиц и домов;
- поля профиля для работы с юридическими лицами;
- скрипт для рассылки уведомлений о исчерпании баланса;
Тарификация услуг
- создание календарей для гибкой тарификации услуг;
- использование расчётных периодов с возможностью активации расчётного периода в момент подключения пользователя на тарифный план;
- списание периодических услуг с указанием расчётного периода, способа списания (в начале, в конце, на протяжении расчётного периода), условий списания (при положительном, при положительном и нулевом, при отрицательном, при любом балансе), даты окончания действия услуги;
- списание разовых услуг при назначении пользователю тарифного плана;
- возможность продажи «пакета услуг» с доснятием необходимой суммы в конце расчётного периода;
- настраиваемая система разовых и периодических подключаемых услуг своможностью тесной интеграции в инфраструктуру провайдера для продажи дополнительных сервисов.
Учет трафика
- неограниченное количество обсчитываемых каналов и сегментов сети;
- возможность разделения трафика по портам, протоколам, IP сети отправителя и получателя;
- возможность сохранения всей подробной статистики по трафику для последующего её просмотра в текстовом форате;
- учёт трафика по различным критериям: периоду тарификации, большему из классов, сумме классов, большему направление в классе, сумме направлений в классе и т.д.;
- указание размера предоплаченного трафика по направлениям с возможностью сброса остатка в конце расчётного периода
- Лимиты трафика c возможностью блокировки или изменения скорости работы абонента при их достижении;
Серверы доступа
- возможность работать сразу с несколькими серверами доступа;
- возможность создания логических серверов доступа для одного физического с разными наборами команд и опций управления;
- настраиваемое поведение сервера доступа при наступлении событий;
- тесное взаимодействие с серверами доступа под управлением MikroTik;
- унифицированный интерфейс работы с системой динамического шейпирования;
- возможность обслуживания запросов на получение IP адреса через DHCP (только MikroTik);
- 802.1x авторизация по логину/паролю, номеру порта или по мак-адресу на коммутаторах D-link;
Мониторинг
- монитор коммутируемых подключений с возможностью сброса сессий и просмотра причин окончания сессий;
- мониторинг состояния IPN пользователей;
- просмотр лога RADIUS авторизаций на серверах доступа, выявление проблемных абонентов;
- шесть типов настраиваемых графических отчётов для анализа статистических данных;
Учёт времени
- возможность тарификации услуг коммутируемого доступа(VPN/L2TP/lISG/PPPOE) по времени;
- возможность задания предоплаченного времени с возможностью сброса остатка в конце расчётного периода;
- гибкая тарификация с различной стоимостью минуты в зависимости от времени суток, дня недели и других временных рамок;
Контроль доступа
- возможность предоставления доступа в интернет через VPN (PPTP/PPPOE/L2TP/lISG) посредством авторизации на RADIUS-сервере, поддерживающим методы авторизации PAP/CHAP/MSCHAPv2;
- возможность жесткой привязки IP- и МАС-адреса к аккаунту;
- автоматический сброс коммутируемых сессий;
- автоматическая блокировка IPN-пользователей;
- возможность указания скорости работы в зависимости от времени суток, дня недели и т.д.;
- изменение скорости абонента без разрыва сессии;
- возможность указания разрешённого времени работы;
- контролируемая возможность авторизации на RADIUS-сервере при недостаточном балансе или наличии блокировок отдельно для VPN и DHCP запросов;
- возможность указания индивидуальных настроек скорости для каждого абонента;
- возможность разрешения/запрещения доступа в веб-кабинет;
- возможность разрешения/запрещения активации карт экспресс-оплаты;
Карты доступа
- возможность генерации карт оплаты и доступа с нужным балансом для указанных тарифных планов и серверов доступа;
- ведение базы дилеров и распространителей карт оплаты и доступа;
- возможность указания скидок и рассрочек по оплате для дилеров;
- история продаж и взаиморасчётов с дилерами;
- возможность указания срока действия карт;
- печать карт через интерфейс администратора;
- выгрузка информации о картах в XML-файл;
- гибкий фильтр по партиям карт;
Бухгалтерия
- настраиваемые шаблоны кассовых чеков, договоров, накладных на продажу карт;
- пополнение лицевого счета через интерфейс администратора, интерфейс кассира, картами экспресс-оплаты, обещанным платежом;
- ведение статистики по всем операциям с лицевым счётом с возможностью их отмены;
- открытый API для работы с лицевым счётом абонентов;
- интеграция с платёжной системой ОСМП;
- просмотр информации о платежах с фильтром по кассиру, абоненту и периоду времени.
Интерфейс администратора
- GUI-приложение, работающее с серверной частью по шифрованному протоколу RPC;
- окно подключения с возможностью запоминания пароля, имени пользователя и адреса хоста;
- унифицированный текстовый поиск по значениям в таблицах;
- выгрузка таблиц в формате csv;
- возможность изменения внешнего вида;
WEB-интерфейс
- просмотр учётной информации;
- просмотр информации об операциях с лицевым счётом;
- просмотр информации о коммутируемых подключениях;
- просмотр информации об остатке предоплаченного трафика;
- просмотр информации об остатке трафика по лимитам;
- настраиваемая возможность пополнения счёта обещанным платежом;
- самостоятельное изменения списка подключаемых услуг;
- изменение пароля;
- изменение тарифного плана;
- просмотр контактной информации о провайдере;
- возможность изменения внешнего вида кабинета;
Интерфейс кассира
- просмотр учётной информации по абонентам;
- гибкий фильтр по абонентам;
- поиск по тексту в окне;
- возможность пополнения баланса с печатью кассового чека;
- возможность перевода абонентов на другие тарифные планы;
- просмотр состояния лимитов и остатка предоплаченного трафика;
- изменение списка подключаемых услуг.
Производительность
- высокопроизводительный RADIUS-сервер, способный обрабатывать сотни запросов в секунду даже на бюджетном сервере;
- высокопроизводительная система сбора и обработки NetFlow статистики;
- возможность масштабирования системы путём установки дополнительных RADIUS-серверов и коллекторов статистики;
Структурно-логическая схема работы системы
Expert Billing System построена на базе устоявшейся схемы с разделёнными компонентами авторизации, сбора статистики и ядром, отвечающим за логику работы системы. Структура биллинг-системы позволяет легко расширять её за счёт установки дополнительных RADIUS-серверов и коллекторов статистики.
Expert Billing System состоит из серверной и клиентской частей. Серверная часть включает следующие компоненты:
- Модуль core
- Модуль rad
- Модуль nf
- Модуль nfroutine
- Модуль rpc
- Веб-кабинет для пользователей
Модуль core – ядро биллинга, отвечающее за бизнес-логику (тарификация, списание средств, управление состоянием пользователей и др.)
Модуль rad предназначен для взаимодействия с сервером доступа по протоколу RADIUS.
Модуль nf используется в качестве коллектора NetFlow v5 статистики.
Модуль nfroutine производит агрегацию и обработку собранной модулем nf статистики о сетевой активности пользователей.
Модуль rpc предоставляет интерфейс для доступа к ядру биллинга извне (интерфейс администратора, интерфейс кассира, некоторые функции веб-кабинета).
Веб-кабинет пользователя представляет собой веб-приложение, написанное наязыке Python с использованием веб-фреймворка Django.
Клиентская часть Expert Billing System включает следующие компоненты:
- Интерфейс администриратора Expert Billing Admin
- Интерфейс кассира
Интерфейс администратора Expert Billing Admin является основным интерфейсом администратора для управления Expert Billing System, она выполнена в качестве отдельного приложения.
Интерфейс кассира также является отдельным приложением, которое позволяет управлять счетами пользователей (списание средств, пополнение счета и др.), переводить пользователей на другие тарифные платы и просматривать статистику по лимитам и остатку предоплаченного трафика.
Структура директорий
/opt/ebs/ data/ dicts/ - RADIUS словари ebscab/ - копия веб-кабинета fonts/ - шрифты, используемые ядром для генерации графиков init.d/ - init-скрипты log/ - каталог с лог-файлами core_log - лог-файл процесса core(ядра) rad_log - лог-файл сервера RADIUS nf_log - лог-файл NetFlow коллектора nfroutine_log - лог-файл агрегатора и тарификатора NetFlow rpc_log - лог-файл rpc-сервера modules/ - каталог системных библиотек nf_dump/ - каталог буферного хранения NetFlow статистики. scripts/ - каталог с дополнительными скриптами sql/ - каталог с первоначальным дампом базы данных temp/ - каталог хранения NetFlow статистики ebs_config.ini - основной файл настроек биллинг-системы ebs_config_runtime.ini - дополнительный внутрисистемный файл настроек биллинг-системы core - ядро биллинг-системы rad - радиус сервер nf - NetFlow коллектор nfroutine - NetFlow агрегатор и тарификатор rpc - RPC-сервер license.lic - файл лицензии web/ ebscab/ settings.py - файл настроек веб-кабинета
Принцип работы с IPN абонентами(Не актуально для 1.4. В работе.)
ExpertBilling позволяет обслуживать как коммутируемые(PPTP/PPPOE/HoSpot), так и некоммутируемые соединения. В случае работы с IPN(IP Network) тарифными планами, или PPPOE/PPTP тарифными планами с дублированием IPN действий схема работы системы выглядит следующим образом.
Схема работы с IPN тарифными планами
При создании абонента система посылает на сервер доступа команду "Добавить абонента" из настроек сервера доступа в интерфейсе администратора. Команда "Добавить абонента" является шаблоном, в котором служебные слова $access_type, $password, $username, $user_id, $account_ipn_ip, $account_vpn_ip, $account_mac_address заменяются соответствующими значениями. Резальтатом работы команды должны стать добавленные, но неактивированные записи.
Установка скорости производится аналогичным способом через NAS Actions. В дополнение к подстановочным символам из команды на добавление абонента здесь используются $max_limit_tx, $max_limit_rx, $burst_limit_tx, $burst_limit_rx, $burst_treshold_tx, $burst_treshold_rx, $burst_time_tx, $burst_time_rx, $priority, $min_limit_tx, $min_limit_rx. Следуюет обратить внимание, но то, что перед добавлением записи, система должна перестраховаться и удалить уже возможно существующую с таким же идентификатором. Биллинг посылает команду на установку/изменение скорости в случае если скорость ещё не установлена или изменилась.
Активация абонента должна приводить к активации добавленных на сервер доступа записей. Активация происходит в том случае, если абонент не активен и у него нет блокировок или ограничений по размеру баланса. Для активации используется соответствующий NAS Actions из параметров сервера доступа. В данной команде можно использовать те же подстановочные символы, что и для добавления абонента.
Деактивация абонента должна приводить к деактивации добавленных на сервер доступа записей. Деактивация происходит в том случае, если абонент активен и у него появилась одна или несколько блокировок.
Удаление абонента происходит при его удалении из системы. Используемые подстановочные символы аналогичны команде добавления.Обратите внимание, что команда удаления с сервера доступа так же выставляет в системе статус "Не активен на сервере доступа".
Состояние каждого абонента вы можете контроллировать через EBS Admin в списке абонентов.
Статус аккаунта
Четыре иконки напротив каждого абонента означают (слева-направо) "У клиента достаточно средств на лицевом счету для работы в текущем расчётном периоде", "У клиента нет блокировок по лимитам", "Пользователь неактивен на NAS", "Пользователь не добавлен на NAS".
ExpertBilling позволяет использовать IPN действия и для PPTP/PPPOE тарифных планов.
Схема использования IPN действий для PPTP/PPPOE тарифных планов.
IPN действия для PPTP/PPPOE тарифных планов отличаются от работы с IPN тарифными планами лиш тем, что настройки скорости для абонентов устанавливаются после каждой RADIUS авторизации.
Использование IPN действий целесообразно тогда, когда вы не хотите запрещать PPTP/PPPOE абонентам авторизацию при их блокировке, однако хотите закрыть доступ к определённым ресурсам или перенаправлять всех таких абонентов на какие-то ресурсы.
Установка и начальная настройка
Установка биллинга
Инструкция по установке серверной части биллинг-системы ExpertBilling 1.4
Установка веб-кабинета
Инструкция по установке веб-кабинета.
Установка и настройка дополнительных скриптов
Вспомогательные скрипты и утилиты
Установка клиентской части
Защита от нелегального копирования =
Внимание!!! Expert Billing System является продуктом интеллектуального труда. Его нелегальное распространение и использование преследуется по закону.
Каждый серверный компонент Expert Billing System при установке привязывается к аппаратной конфигурации сервера. Это означает, что при изменении конфигурации системы (в частности, переразбивке/замене/добавлении/удалении жестких дисков, изменении номера активного интерфейса, добавлении/удалении любых IDE/SATA/SСSI-устройств, добавлении/извлечении USB дисков) и смене ОС система не будет работать из-за ограничений, налагаемых защитой от нелегального копирования. При изменении конфигурации оборудования вам необходимо обратиться к разработчику для получения новой копии Expert Billing System.
В комплекте поставки системы имеется файл license.lic, уникальный для каждого легального пользователя системы. Он является частью системы защиты Expert Billing System от нелегального распространения и не подлежит модификации и удалению. В случае его отсутствия или изменения, биллинг-система не будет работать.
В соответствии с лицензионным соглашением, покупатель получает права на модификацию и распространение кода веб-кабинета. При этом компания-разработчик Expert Billing System не несет никакой ответственности за возможный ущерб, нанесенный по причине использования модифицированного веб-кабинета.