Встановлення та налаштування білінгової системи ABillS - IT Blog
На тесті встановлюватиму в чисту систему Ubuntu Server 16.04 LTS (при установці системи вибрав standart system utilities і OpenSSH server).
Перейдемо на користувача root:
Перед початком встановлення оновимо систему та виконаємо перезапуск:
Встановимо необхідні компоненти:
Перейдемо в директорію /usr і завантажимо до неї останню версію з сайту http://sourceforge.net/projects/abills/
Розпакуємо завантажений архів з ABillS:
Створимо необхідні директорії та встановимо права:
Скопіюємо веб-конфігурацію abills до директорії Apache2:
Створимо сертифікат (в Common name вкажемо ім'я хоста):
Активуємо необхідні модулі Apache2:
І перезапустимо Apache2 щоб застосувати зміни:
Підключимося до mysql серверу:
Створимо користувача та базу даних (де sqlpassword - вкажемо свій пароль):
Імпортуємо дані mysql бази даних:
У разі помилки виконаємо команду нижню та повторимо імпорт бази даних:
Встановимо необхідні perl модулі:
Якщо якісь модулі не встановилися, доустановимо:
Надалі можна перевірити, чи всі необхідні perl модулі встановлені:
Також запустимо скрипт, який допоможе знайти помилки:
Встановимо необхідні бібліотеки для складання freeradius:
Подивимося нову версію freeradius тут ftp://ftp.freeradius.org/pub/freeradius/ та встановимо:
Створимо скрипт автозапуску:
Вставимо в нього вміст:
Робимо його виконуваним та включаємо в автозапуск:
Створюємо конфігураційні файли ABillS:
Відкриємо файл конфігурації FreeRADIUS:
І змінимо наступне:
Можна також замість * вказати IP на якому працюватиме FreeRADIUS, інакшебуде на всіх:
Очистимо clients.conf оскільки зберігатимемо сервера доступу в mysql базі даних:
Відкриємо файл параметрів з'єднання з mysql базою:
І вкажемо вірні, наприклад:
Наприкінці файлу:
У наступному конфігураційному файлі також вкажемо параметри з'єднання з mysql базою:
Створимо користувача та групу для FreeRADIUS, а також призначимо права на директорії:
Спробуємо запустити FreeRADIUS у режимі налагодження, якщо все добре, зупинимо клавішами Ctrl+C:
І запустимо FreeRADIUS у звичайному режимі:
На сервері з процесором 8 ядер та 5000 клієнтів у radiusd.conf я вказував потоки:
Переглянути запущений FreeRADIUS можна так:
Переглянути встановлену версію FreeRADIUS можна так:
Налаштуємо ротацію логів FreeRADIUS:
Внесемо до cron завдання:
Дивіться також довідку:
Створимо файл для логів та призначимо права:
Створимо символічні посилання на gzip та mysqldump для створення бекапів бази:
Session-Timeout можна збільшити оскільки за умовчанням воно дорівнює 604800 (тиждень) і через цей час сесія примусово завершується і піднімається при наступному DHCP запиті або некласифікованому пакеті. accel-ppp наприклад або краще не вказувати взагалі):
Додамо клієнта "Клієнти" - "Логін" - "Додати".
Заведемо сервіс Internet користувачу: "Клієнти" - (вибрати користувача) - "Інформація" - "Сервіси" - "Internet"
Якщо використовується фільтр негативного депозиту, то в Клієнти Групи відзначимо яким групам дозволено брати кредит.
Виконаємо перевірку запустивши утиліту radtest вказавши логін та пароль існуючого користувача:
У файлі/usr/abills/libexec/config.pl вкажемо з яких IP дозволено підключаться адміністраторам (краще вказати у вкладці Настройка — Адміністратори — Доступ):
Можна вказати час сесії у web-інтерфейсі адміністратора:
Щоб користувачам з негативним балансом у гостьовому режимі видавався той же IP що й у робочому (у разі невідомі не отримають IP):
Щоб при додаванні послуги за умовчанням вибирався якийсь IP Pool (де 1 це id пула, його можна подивитися в Налаштування — Сервер доступу — IP POOLs):
Щоб абонентам, які не користувалися послугою, кілька місяців не додавало по кілька списань (у кого місячний тариф), можна додати до конфігурації опцію (при платежі або встановленні кредиту в полі Активація буде встановлено поточну дату):
Перевірити цілісність бази даних можна так:
Перевірка на не створені таблиці:
Можна імпортувати відсутні таблиці:
Можна перевірити чи правильно працює скрипт (зустрічав помилку "Table 'abills.dv_main' doesn't exist", виправив її потім затока Dv.sql в базу):
В інтерфейсі ABillS виберемо "Налаштування" - "Адміністратори", навпроти потрібного адміністратора заначок "Права" і встановимо галочки на необхідні права.
У "Налаштування" - "Інше" - "Шляхи" вкажемо шляхи до програм.
Можна додати кнопку PING на сторінці абонента:
Якщо проблема з платіжними системами, то дивимося: