Що це і чиє це?
Так уже склалося, що протягом декількох років биллинговая система ExpertBilling (www.expertbilling.ru) перебувала в тіні і все впровадження проводилися точково без широкого розголосу. Виною тому кілька причин, одна з яких - відсутність сертифіката РФ, але зараз ми не про це. Сертифіката немає й зараз, але занадто багато в цій системі хорошого, щоб про неї і далі мовчати. Розробкою системи займається білоруська компанія.
Так як зовсім недавно вийшла версія 1.4, то встановлювати і налаштовувати ми будемо саме її. Тим більше що з часів 1.2.1 і 1.3 вона сильно змінилася і стала краще. ExpertBilling 1.4 може працювати на 32-бітних Debian і Ubuntu. При бажанні можна змусити працювати і на інших Linux-системах. Налаштовується і управляється цей білінг через десктопних програм написане на PyQt4. Існує інтерфейс касира, клієнтський агент, веб-кабінет абонента і веб-інтерфейс HelpDesk. Зі списком можливостей краще понакоміться на офіційному сайті, так як їх дуже багато і публікувати їх тут не бачу сенсу. У цій статті торкнемося архітектури білінгу, моделі взаємодії з серверами доступу, прикладом настройки білінг-системи для тарифікації трафіку і надання безлімітного доступу.
ExpertBilling складається з п'яти серверних компонентів, набору різних обслуговуючих скриптів і десктопних компонентів. До серверним відносяться:
- core - ядро білінгу системи. Воно займається тарифікацією і обробкою внутрішньої бізнес-логіки.
- nfroutine - тарифікатор і агрегатор netflow.
- nf - NetFlow v5 колектор і класифікатор
- rad - власний RADIUS сервер
- rpc - RPC сервер для взаємодії інтерфейсу адміністратора і веб-кабінету з ядром.
- Web-кабінет користувача (написаний за допомогою веб-фреймворку Django)
- HelpDesk інтерфейс, як частина веб-кабінету.
- Скрипт міграції з інших білінг-систем
- Скрипт імпорту платежів
- Скрипт побудови графіка утилізації каналу абонентами
- та ін.
В якості СУБД використовується Postgresql> 8.2. Як бачите, в складі білінгу весь свій. Чогось доустанавливать і годинами налаштовувати не доведеться. FreeRADIUS не використовується. Замість нього пропонують власні високопродуктивний сервер, який по тестах в різних режимах видає не менше 300 пакетів в секунду з затримкою не більше секунди. Цього більш ніж достатньо, враховуючи його можливості.
В результаті у вас повинен розпакувати файл ebs_manage.py і архів з білінг-системою, який матиме вигляд ebs-номер_сборкі.tar.gz Далі встановимо необхідні бібліотеки і створимо початкові папки:
apt-get update apt-get install mc openssh-server python-twisted python-psycopg2 openssl python-paramiko python-dateutil python-pytils python-crypto libpython2.6 apache2 libapache2-mod-wsgi python-jsonpickle python-simplejson rrdtool snmp python- pexpect
apt-get install postgresql-8.4 postgresql-contrib-8.4
Створимо базу даних і імпортуємо функції для роботи з типами даних. Після команди createuser -P -s ebs система запитає у вас пароль для користувача бази даних ebs. Запишіть і запам'ятайте його.
createuser -P -s ebs
createdb -O ebs ebs
> Psql ebs -f /usr/share/postgresql/8.4/contrib/int_aggregate.sql
psql ebs -f /usr/share/postgresql/8.4/contrib/_int.sql exit
Запустіть скрипт установки білінгу і вводите необхідні значення для доступу до БД.
python ebs_manage.py install ім'я розпакованого архіву з біллінгом (вид ebs - *****. tar.gz)
сервер доступу
Тарифні плани
Створимо 2 тарифних плани:
- Безлімітний тарифний план з абонентською платою і способом доступу PPTP "Перший". Вартість на місяць 1000 рублів. Швидкість вх / вих 1 мегабіт. Почати списання з моменту підключення користувача на тарифний план. Списувати рівними частинами протягом місяця раз на годину.
- Тарифний план з NetFlow тарифікацією трафіку і передоплаченим трафіком "Базовий". Вартість 600 рублів. Тарифікувати тільки вихідний трафік. Нараховувати 600 мегабайт передплаченого трафіку. При витрачення передплаченого трафіку тарифікувати кожен мегабайт за 10 рублів.
З безлімітним тарифним планом ніяких складнощів. Скріншоти нижче демонструють настройку.
Міжабонентських: 192.168.11.0/24->192.168.11.0/24 напрямок INPUT
0.0.0.0/0->192.168.11.0/24 напрямок INPUT
192.168.11.0/24->0.0.0.0/0 напрямок OUTPUT
Тепер приступимо до налаштування самого тарифного плану. Вказуємо назву, спосіб доступу, відзначаємо потрібні компоненти (NetFlow тарифікація і Періодичні послуги)
Переходимо на закладку NetFlow тарифікації, натискаємо на кнопку + над першою таблицею, двічі клацає по осередку Група трафіку, додаємо нову групу так, як показано на скріншоті.
Вибираємо цю групу в попередньому вікні і знову натискаємо Ok. Бачимо наступну картину:
Доуказиваем залишилися параметри, як на скріншоті.
Переходимо на закладку Періодичні послуги і додаємо послугу, яка буде на початку кожного розрахункового періоду знімати з рахунку абонента 600 рублів в рахунок передплаченого трафіку.
Якщо під час налаштування не було самодіяльності - все запрацює з першого разу. Якщо була - згадуйте, де ви що не так зробили і питайте.
висновок
Теги: Mikrotik, Мікротік, Mikrotik Billing, Мікротік Биллинг, Биллинг для мікротіка, ExpertBilling.