Установить LANBilling на Debian 9

Это устаревшая инструкция. Debian 9 не поддерживается с 30.06.2022.

Cписок поддерживаемых ОС и инструкций по установке смотрите по ссылке.


1. Системные требования к аппаратно-программной части

Для обеспечения функционирования АСР в штатном режиме (с использованием всех функций, предоставляемых ПО) необходима установка и настройка следующих программных компонентов:

Компоненты ОС

Обязательно проверьте список соответствия версий модулей и версий АСР.

  • СУБД MySQL 8.x и 5.7

    • 8.x — поддерживается с релиза 2.0.32
    • 5.7.x — поддерживается с релиза 2.0.27 от 24.10.2018
    • 5.6.x — поддерживается релизами 2.0.23 от 22.12.2017 и до 2.0.33 включительно
  • Веб-сервер Apache

  • PHP:

    • 7.0-7.2 — поддерживается с релиза 2.0.29 и новее.
    • 5.6.x — поддерживается с релиза 2.0.20 и до 2.0.33 включительно.
  • Библиотеки PHP:

    • libtiff;
    • libpng;
    • gd;
    • soap;
    • multibyte strings(mbstring);
    • xml;
    • bcmath;
    • ghostscript (требуется для генерации шаблонов в pdf формате);
    • pdftk (библиотека для “склейки” pdf документов в один файл).
  • Python 3.x

Компоненты АСР

  • Пакет ядра LBcore сборки 2.0.23 и выше
  • Набор необходимых сетевых агентов (lbarcd, lbucd, lbphone и т. д.)

Описание используемых портов АСР

В списке перечислены и описаны сетевые порты, используемые АСР (указаны порты по-умолчанию):

  • На вход, сервер веб-интерфейсов — HTTP\HTTPS — 80 (443) — Используется для доступа к Веб-интерфейсам АСР

  • На вход, сервер с LBcore — JSON\JSON-SSL — 1502 (1503) — Используется для связи LBcore с остальными агентами АСР. Также к данному порту обращается интерфейс lbweb-admin.

  • На вход, сервер LBcore — SOAP — 34012 — Данный порт используется LBcore для связи новым личным кабинетом(lbweb-client), с старым административным интерфейсом(объявлен deprecated с 2.0.30), а также для реализации доступа по API.

  • На вход, сервер БД — MySQL — 3306 — В случае выноса MySQL на отдельный сервер — LBcore и агенты должны иметь доступ к данному порту сервера MySQL. Также обратите внимание в этом случае — MySQL по-умолчанию слушает только 127.0.0.1(параметр bind).

  • На выход, до сервера lic.lanbilling.ru — Лицензирование — 34100 во внешнюю сеть — используется для активации лицензии.

Настройка портов для исходящих соединений

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

Во избежание данной проблемы рекомендуется ограничить диапазон динамически выдаваемых портов. Для этого необходимо добавить в конфигурационный файл /etc/sysctl.conf строку:

net.ipv4.ip_local_port_range = 35000 60999

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

vm.zone_reclaim_mode = 1
vm.swappiness = 5

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

sysctl net.ipv4.ip_local_port_range='35000 60999' vm.swappiness=5 vm.zone_reclaim_mode=1

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

В нашем случае они будут находится в директории /root/.

2. Установка необходимых для работы LANBilling сервисов

Установка MySQL-сервера

Необходимо произвести настройку репозитория MySQL-сервера. Для этого необходимы дополнительные утилиты:

apt-get install -y --no-install-recommends curl ca-certificates lsb-release wget gnupg2

Настройка репозитория происходит с помощью пакета mysql-apt-config. Требуется скачать данный пакет, например, с официального сайта:

wget https://dev.mysql.com/get/mysql-apt-config_0.8.13-1_all.deb

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

dpkg -i mysql-apt-config_0.8.13-1_all.deb

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

  • АСР версии 2.0.32 и выше, MySQL 8.x

    Войти в пункт «MySQL Server & Cluster», выбрать mysql-8.0, вернуться в предыдущее меню и выбрать Ok

  • АСР версии ниже 2.0.32 или Вам требуется именно MySQL 5.7:

    Требуется убедиться, что первый пункт соответствует необходимой версии Currently selected: mysql-5.7 (по умолчанию для Debian 9). Переходим к Ok и заканчиваем преднастройку.

image

Необходимо обновить подключенные репозитории.

apt update

Установка MySQL-сервера производится командой:

apt install mysql-server

У вас будет запрошен пароль для пользователя root сервера mysql, мы оставляем его пустым и исходим далее в повествовании из данного варианта.

В случае установки MySQL 8.x также будет вопрос о типе аутентификации, требуется выбрать “Use Legacy Authentication Method (Retain MySQL 5.x Compatibility)”.

Остановим MySQL для настройки:

systemctl stop mysql

Откройт любым редактором /etc/mysql/mysql.conf.d/mysqld.cnf.

Если у вас уже что-то заполнено — требуется сравнить параметры и выбрать оптимальный для вас. Дублирования параметров с разными значениями в рамках одной секции быть не должно!

В секцию [mysqld] требуется добавить следующие параметры, обратите внимание на параметр sql_mode — он разный для разных версий MySQL:

default-authentication-plugin = mysql_native_password
character-set-server = utf8
character-sets-dir = /usr/share/mysql/charsets
skip-character-set-client-handshake
skip-name-resolve
innodb_file_per_table = ON
ssl = 0
bind-address = 127.0.0.1 #Если Вы планируете подключаться к MySQL с другого хоста следует изменить на 0.0.0.0
#For 8.x
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
#For 5.7
#sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER
#For 5.6
#sql_mode = NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_AUTO_VALUE_ON_ZERO,STRICT_ALL_TABLES
innodb_stats_on_metadata = 0
group_concat_max_len = 1000000000
enforce_gtid_consistency = OFF
gtid_mode = OFF
log_bin_trust_function_creators = 1
performance_schema = OFF
explicit_defaults_for_timestamp
key_buffer_size = 64M
max_heap_table_size = 128M
tmp_table_size = 128M
innodb_buffer_pool_size = 512M
innodb_buffer_pool_instances = 1
#innodb_log_file_size = 64M #**Данный параметр стоит менять если Вы знаете как он меняется**
slow_query_log = 1
innodb_flush_method=O_DIRECT
innodb-flush-log-at-trx-commit = 2

Запуск БД MySQL осуществляется командой:

systemctl start mysql

Установка и настройка веб-сервера

PHP 7.0 доступен для установки в Debian 9

Если Вам требуется версия 5.6, 7.1 или 7.2 — то потребуется подключить дополнительные репозитарии

apt install -y --no-install-recommends curl ca-certificates lsb-release wget gnupg2 apt-transport-http
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
apt update

Установим необходимые для АСР пакеты:

apt install apache2 php7.0 php7.0-soap php7.0-gd php7.0-gmp php7.0-curl php7.0-mysql php7.0-bcmath php7.0-xml php7.0-mbstring libtiff5 libpng16-16

Отредактируем настройки php удобным для Вас редактором:

/etc/php/7.0/apache2/php.ini

Выставляем параметры:

date.timezone = Europe/Moscow ; Или соответствующую Вашему региону временную зону http://php.net/date.timezone
max_execution_time = 3600
default_socket_timeout = 3600
memory_limit = 1024M
session.gc_probability = 0
max_input_vars = 2500

Если включен firewall (ufw status) — добавим правила:

ufw allow 80/tcp
ufw allow 443/tcp
ufw reload

Если необходим https — подключим его:

a2enmod ssl
a2ensite default-ssl
systemctl restart apache2

Установка дополнительных пакетов

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

apt install -y python-simplejson dirmngr atop logrotate
  • python-simplejson — используется некоторыми скриптами, например платёжным скриптом банка Тинькофф
  • atop — аналитическая система, требуется для анализа производительности АСР и сервера в целом
  • logrotate — утилита ротации логов

3. Установка LANBilling

Скачивание пакетов модулей АСР

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

Debian-base репозитории будут добавлены позднее.

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

image

Установка модулей АСР

Дистрибутив LANBilling для операционных систем семейства Debian распространяется в виде готовых пакетов для пакетных менеджеров.

Установка пакетов выполняется следующим образом:

dpkg -i %название пакета%.deb

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

/usr/local/billing/
/etc/billing.conf
/etc/systemd/system/

Установка ядра LBcore

Предполагается, что вы уже имеете:

Установим пакет ядра АСР, заблаговременно скачанный на сервер, в нашем случае в директорию /root/:

dpkg -i /root/lbcore_2.0.34.0-57.git6a112fb7.debian9_amd64.deb
systemctl enable lbcore

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

Зайдите в MySQL, мы предполагаем, что это выполняется на том же сервере что и LBcore от пользователя root:

mysql
или, если Вы задавали пароль:
mysql -p%пароль%

Создадим новую базу данных, пользователей и права для работы с ней от имени АСР:

CREATE DATABASE `billing` DEFAULT CHARSET UTF8;
CREATE USER IF NOT EXISTS 'billing'@'localhost' IDENTIFIED WITH mysql_native_password BY 'billing';
GRANT ALL ON `billing`.* TO 'billing'@'localhost';
CREATE USER IF NOT EXISTS 'billing'@'127.0.0.1' IDENTIFIED WITH mysql_native_password BY 'billing';
GRANT ALL ON `billing`.* TO 'billing'@'127.0.0.1';
exit

Создадим структуру БД LBcore и внесём в базу информацию об адресах

mysql billing < /usr/local/billing/mysql/create.sql
mysql billing < /usr/local/billing/mysql/claddr.sql

Откройте файл конфигурации:

/etc/billing.conf

Убедитесь, что указаны параметры доступа, которые вы задавали при создании БД. Если нет, исправьте их. Данные должны быть в формате dbuser:dbpass@dbhost:dbport/dbname.

  • dbuser и dbpass — логин и пароль администратора.
  • dbhost — IP-адрес сервера, где установлена БД.
  • dbport — номер порта.
  • dbname — название БД.

Если не указать dbport, будет использоваться порт 3306. Пример для случая, когда LBcore и MySQL установлены на одном сервере и используется порт по умолчанию:

# DB access parameters
database = mysql://billing:billing@127.0.0.1/billing

Теперь можно запустить ядро АСР:

systemctl start lbcore

В случае появления в логах сообщения вида «error while loading shared libraries: libssl.so.1.0.2: cannot open shared object file: No such file or directory» — требуется поставить пакет libssl1.0 от debian9. Эта ситуация может возникать на старых пакетах для данной ОС.

wget http://ftp.de.debian.org/debian/pool/main/o/openssl1.0/libssl1.0.2_1.0.2u-1~deb9u1_amd64.deb
dpkg -i libssl1.0.2_1.0.2u-1~deb9u1_amd64.deb

После этого перезапустить LBcore

systemctl restart lbcore

Работу процесса ядра LBcore можно проверить, выполнив команду.

  • Первый вариант:

    ps ax | grep -i lbcore
    
    
    
  • Второй вариант:

    systemctl status lbcore
    
    
    

Установка административного интерфейса 3.x

Для выполнения этого пункта должен быть установлен и настроен веб-сервер.

Для использования интерфейса необходимы два пакета: lbweb-common и lbweb-admin.

Установим пакеты интерфейса, в нашем случае они заранее скачены в /root/:

dpkg -i lbweb-common_2.21.1+202011101204gitfeeac85627a7-1_all.deb lbweb-admin_3.12.0+202012061255gita8a0656bac61-1_all.deb

Создадим основной конфигурационный файл из примера:

cp /etc/lanbilling/phpclient/admin/admin.ini.sample /etc/lanbilling/phpclient/admin/admin.ini

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

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

/usr/local/sbin/lbwebcfg -y admin /etc/lanbilling/phpclient/admin

Добавим конфигурацию административного интерфейса в настройки веб-сервера:

cp /etc/lanbilling/phpclient/apache2/lbweb-admin.apache2.sample /etc/apache2/sites-available/lbweb-admin.conf
a2ensite lbweb-admin.conf

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

systemctl restart apache2

Административный интерфейс теперь будет доступен по адресу: http://SERVER_IP/lbweb-admin/

На этом этапе рекомендуется активировать лицензию.

Установка личного кабинета пользователя 3.x

Для использования интерфейса необходимы два пакета: lbweb-common и lbweb-client.

Установим пакеты интерфейса, в нашем случае они заранее скачены в /root/:

dpkg -i lbweb-common_2.21.1+202011101204gitfeeac85627a7-1_all.deb lbweb-client_3.7.0+202012021334gitc33fdc0d56d3-1_all.deb

Добавим конфигурацию клиентского интерфейса в настройки веб-сервера:

cp /etc/lanbilling/phpclient/apache2/lbweb-client.apache2.sample /etc/apache2/sites-available/lbweb-client.conf
a2ensite lbweb-client.conf
a2enmod rewrite
systemctl restart apache2

Интерфейс будет доступен по адресу: http://SERVER_IP/lbweb-client/

Агент RADIUS (LBarcd)

Для выполнения этого пункта должны быть выполнены пункты:

Иными словами, должна быть полноценно запущенная АСР и доступ к административному веб-интерфейсу.

RADIUS-агент может работать на том же сервере что и ядро АСР, либо отдельно — на другом сервере.

Перед установкой требуется:

  1. Войти в административный интерфейс
  2. Перейти в меню Объекты => Агенты
  3. Создать нового агента с соответствующим типом (RADIUS)
  4. Заполнить имя и описание агента
  5. Нажать сохранить
  6. Заполнить сегменты сети в закладке “Управление сетями”. Требуется обязательно добавить хотя бы один сегмент
  7. Заполнить “Особые настроки”, подробное описание опций можно найти в документации

Нажав на синюю кнопку “Назад” Вы попадёте в список доступных агентов.

Запомните ID созданного агента, он потребуется при работе с конфигурационными файлами.

Перейдите в консоль сервера.

Установим пакет, заблаговременно скачанный на сервер. В нашем случае:

dpkg -i lbarcd_2.0.34.0-4.gitcc80f82b.debian9_amd64.deb
systemctl enable lbarcd

Для настройки агента необходимо:

  1. Войти в MySQL:

    mysql -p%пароль%
    

    ``

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

    CREATE DATABASE radius DEFAULT CHARSET utf8;
    CREATE USER IF NOT EXISTS 'radius'@'localhost' IDENTIFIED WITH mysql_native_password BY 'radius';
    GRANT ALL ON `radius`.* TO 'radius'@'localhost';
    CREATE USER IF NOT EXISTS 'radius'@'127.0.0.1' IDENTIFIED WITH mysql_native_password BY 'radius';
    GRANT ALL ON `radius`.* TO 'radius'@'127.0.0.1';
    

    ``

  3. Применить скрипты для создания структуры БД radius

    mysql radius < /usr/local/billing/mysql/lbarcd/rad_create.sql
    

    ``

  4. В конфигурационном файле /etc/billing.conf.LBarcd проверить и изменить следующие параметры:

    • Доступ к созданной БД в формате mysql://db_login:db_pass@db_ip/db_name

      #Database address
      database = mysql://radius:radius@127.0.0.1/radius
      
      
      асшифровка:
      db_login и db_pass — реквизиты доступа созданного пользователя БД;
      db_ip и db_name — IP-адрес сервера (например 127.0.0.1 или localhost), на котором создана БД, и название БД RADIUS.
      
      
    • Доступ к ядру АСР в формате login:pass@ip:port

      # Access to LBcore server
      server = admin@127.0.0.1:1502
      
      
      асшифровка:
      login и pass — реквизиты доступа **администратора** АСР
      ip и port — IP-адрес и порт сервера, на котором установлена АСР
      
      
    • Идентификатор RADIUS-агента из административного интерфейса

      # Agent ID. (Must be unique)
      sysid = 1
      
      
      

image

После создания БД для RADIUS-агента, при первом старте, происходит синхронизация необходимых данных из основной БД, с которой работает ядро АСР.

В зависимости от объема данных синхронизация может занимать продолжительное время (до 20 мин). Об успешности синхронизации можно судить по логам работы агента в режиме debug — файл /var/log/billing/lbarcd. Журналирование событий в режиме debug требует большого объёма дискового пространства и рекомендуется только при возникновении ошибок или отладке.

Для настройки режима логирования в конфигурационном файле /etc/billing.conf.LBarcd необходимо изменить параметр log_level:

# Log verbosity level: error, warning, info, verbose, debug
log_level = debug

При успешном завершении синхронизации в логах будут сообщения вида “Synchronize with LBserver complete”.

Запускаем RADIUS-агент командой:

systemctl start lbarcd

Агент NetFlow (LBucd)

Для выполнения этого пункта должны быть выполнены пункты:

Иными словами, должна быть полноценно запущенная АСР и доступ к административному веб-интерфейсу.

Перед установкой требуется:

  1. Войти в административный интерфейс

  2. Перейти в меню Объекты => Агенты

  3. Создать нового агента с соответствующим типом (Netflow)

  4. Заполнить имя и описание агента

  5. Нажать сохранить

  6. Заполнить сегменты сети в закладке “Управление сетями”. Требуется обязательно добавить хотя бы один сегмент

  7. Заполнить “Особые настроки”, подробное описание опций можно найти в документации

Нажав на синюю кнопку “Назад”, вы попадёте в список доступных агентов.

Запомните ID созданного агента, он потребуется при работе с конфигурационными файлами.

Перейдите в консоль сервера.

Установим пакет, заблаговременно скачанный на сервер. В нашем случае:

dpkg -i lbucd_2.0.34.0-3.git0fb1ca52.debian9_amd64.deb
systemctl enable lbucd

Для настройки агента необходимо настроить конфигурационный файл /etc/billing.conf.LBucd.

  1. Выбрать режим работы:

    # Agent mode
    #   main: detail statistics stored in main DB
    #   safe: detail statistics stored in local DB
    type = main
    

    ``

  2. Доступ к БД ядра АСР в формате mysql://db_login:db_pass@db_ip/db_name:

    #Database address
    database = mysql://billing:billing@127.0.0.1/billing
    

    ``

    Расшифровка:

    • db_login и db_pass — реквизиты доступа созданного пользователя БД;
    • db_ip и db_name — IP-адрес сервера (например 127.0.0.1 или localhost), на котором создана БД, и название БД ядра АСР.
  3. Доступ к ядра АСР в формате login:pass@ip:port

    # Access to LBcore server
    server = admin@127.0.0.1:1502
    

    ``

    Расшифровка:

    • login и pass — реквизиты доступа администратора АСР
    • ip и port — IP-адрес и порт сервера, на котором установлена АСР
  4. Идентификатор NetFlow-агента из административного интерфейса:

    # Agent ID. (Must be unique)
    sysid = 0
    

    ``

Если планируются большие объёмы сохраняемых данных NetFlow агента, возможно реализовать safe режим, то есть использование агентом собственной БД.

Мы настоятельно не рекомендуем использовать АСР как аналитическую систему — для это служат DPI, например СКАТ.

Войти в MySQL:

mysql -A -p%пароль%

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

CREATE DATABASE billing_safe DEFAULT CHARSET utf8;
CREATE USER IF NOT EXISTS 'billing_safe'@'localhost' IDENTIFIED WITH mysql_native_password BY 'billing_safe';
GRANT ALL ON `billing_safe`.* TO 'billing_safe'@'localhost';
CREATE USER IF NOT EXISTS 'billing_safe'@'127.0.0.1' IDENTIFIED WITH mysql_native_password BY 'billing_safe';
GRANT ALL ON `billing_safe`.* TO 'billing_safe'@'127.0.0.1';

Или можете добавить права на создаваемую базу данных уже имеющемуся пользователю:

CREATE DATABASE billing_safe DEFAULT CHARSET utf8;
GRANT ALL ON `billing_safe`.* TO 'billing'@'localhost';
GRANT ALL ON `billing_safe`.* TO 'billing'@'127.0.0.1';

Применить скрипты для создания структуры БД billing_safe:

mysql -A billing_safe < /usr/local/billing/mysql/lbucd/ucd_create.sql

В конфигурационном файле /etc/billing.conf.LBucd проверить и изменить следующие параметры:

Доступ к созданной БД в формате mysql://db_login:db_pass@db_ip/db_name

# Local DB access parameters (for 'safe' mode only)
stat_database = mysql://billing:billing@127.0.0.1/billing_safe

Расшифровка:

  • db_login и db_pass — реквизиты доступа созданного пользователя БД;
  • db_ip и db_name — IP-адрес сервера (например 127.0.0.1 или localhost), на котором создана БД, и название БД NetFlow.

Поменять режим работы:

# Agent mode
#   main: detail statistics stored in main DB
#   safe: detail statistics stored in local DB
type = safe

Запускаем netflow-агент командой:

systemctl restart lbucd

Агент Классической телефонии (LBphone)

Для выполнения этого пункта должны быть выполнены пункты:

Установим пакет, заблаговременно скачанный на сервер. В нашем случае:

dpkg -i lbphone_2.0.34.0-1.debian9_amd64.deb
systemctl enable lbphone

В административном интерфейсе создадим новый агент типа LBphone:

image

В конфигурационном файле /etc/billing.conf.LBphone указываем параметры подключения к ядру lbcore и agent_id, с которым создан агент в интерфейсе:

server = admin:password@127.0.0.1:1502
agent_id = 2

Запускаем агент lbphone командой:

systemctl restart lbphone

Установка VOIP-телефонии LBircd

Для выполнения этого пункта должны быть выполнены пункты:

Установим пакет, заблаговременно скачанный на сервер. В нашем случае lbircd_2.0.34.0-1.debian9_amd64.deb.

В административном интерфейсе создадим агент типа VOIP:

image

В конфигурационном файле /etc/billing.conf.LBircd указываем параметры подключения к ядру lbcore и sysid, с которым создан агент в интерфейсе:

rdbhost = 127.0.0.1
rdbuser = billing
rdbpass = billing
rdbname = billing
sysid = 5

Файл службы расположен в директории:

/etc/systemd/system/lbircd.service

Запускаем агент lbircd командой:

systemctl restart lbircd

Установка DHCP-агента LBinet

Для выполнения этого пункта должны быть выполнены пункты:

Установим пакет, заблаговременно скачанный на сервер. В нашем случае: lbinet_2.0.34.0-1.debian9_amd64.deb.

В конфигурационном файле /etc/billing.conf.LBinet укажем параметры подключения к ядру lbcore и agent_id (id агента) под которым запущен RADIUS-агент, например:

lbcore_host = 127.0.0.1
lbcore_port = 1502
lbcore_user = admin
lbcore_password =
agent_id=4

Файл службы расположен в директории:

/etc/systemd/system/lbinet.service

Запустим lbinet:

systemctl restart lbinet

4. Настройка ротации лог-файлов

С версии LANBilling 2.0.33 путь к лог-файлам по-умолчанию находится в /var/log/billing/. Для версий 2.0.32 и младше: /usr/local/billing/.

Пример настройки ротации и архивирования логов для утилиты logrotate находится в файле /etc/lanbilling/lbrotate.conf. Чтобы активировать функционал, необходимо:

  1. Убедиться в наличии установленной утилиты logrotate в системе, в случае отсутствия, установить соответствующий пакет. По умолчанию logrotate прописывается в cron.daily и запускается каждый день в 03:01.

  2. Скопировать файл lbrotate.conf.

    cp /etc/lanbilling/lbrotate.conf /etc/logrotate.d/
    

    ``

Описание структуры файла и параметров можно найти в мануалах:

5. Активация лицензии

Заказчик, после приобретения LANBilling получает лицензионный ключ, который всегда доступен в системе Helpdesk. Доступ к системе Helpdesk осуществляется с адреса: https://client.lanbilling.ru

Для активации лицензии необходимо, чтобы на сервере ядра АСР был открыт доступ к серверу активации лицензии и по порту 34100.

Сервер: lic.lanbilling.ru:34100

После получения Лицензионного ключа, для запуска модулей АСР требуется провести активацию лицензии через сервер активации, расположенный в домене lanbilling.ru.

Для этого необходимо:

  • Войти в административный веб-интерфейс системы под атрибутами администратора.
  • В разделе “Опции” выбрать пункт “Общие”, раздел “Активация”, “Получить лицензионный ключ”.
  • Ввести ключ активации и название компании в соответствующие разделы формы активации лицензии.
  • Нажать кнопку “Активировать”.

Название компании, должно совпадать с названием компании определенным в разделе “Опции” пункт меню “Реквизиты оператора” поле “Имя компании с формой собственности:”.

При положительном ответе сервера активации продукт готов к эксплуатации.

Существующие клиенты, уже имеющие регистрацию в LANBilling HelpDesk, при обновлении АСР до версии 2.0 размещают запрос на получение лицензии с темой “Лицензионный ключ для версии 2.0”, после чего получают Лицензионный ключ в системе HelpDesk.

Лицензия содержит информацию, по которой определяется ряд рабочих параметров АСР: агентская схема телефонии, интеграция с Fidelio, модуль Email Connector, модуль инвентаризации, время действия, максимальное количество пользователей АСР и пр. При изменении любых из указанных параметров, связанных с реконфигурацией АСР, требуется повторное проведение активации нового ключа, содержащего скорректированные параметры.

Механизм активации учитывает возможность назначения тех или иных параметров функционирования АСР в процессе активации. В том случае, если набор ключевых параметров изменяется после проведения активации АСР, модуль контроля лицензионности копии вернет эти параметры к первоначальному значению.

6. Справочные материалы

Расшифровка названий пакетов LANBilling

Все пакеты LANBilling определены по одному и тому же правилу, разберем на примере пакета ядра для Debian 9 amd64:

Начиная со сборки 018 пакеты LANBilling 2.0 имеют следующий вид:

lbcore_2.0.34.0-57.git6a112fb7.debian9_amd64.deb — пример пакета ядра АСР, где:

  • lbcore — наименование модуля;
  • 2.0 — версия релиза;
  • 34 — номер релиза;
  • 0 — порядковый номер прохождения полного тестирования (начиная с 0);
  • -57 — количество изменений, вошедшее в пакет, с момента релиза(начиная с 1);
  • git6a112fb7 — номер ревизии модуля;
  • debian9_amd64 — платформа, для которой собран пакет (в данном случае Debian 9 amd64).

Запуск нескольких копий агентов

В рамках systemctl используется шаблон @service. Файл конфигурации должен называться billing.conf.LB%.NUM. Например для lbarcd@2 — «billing.conf.LBarcd.2».

  1. Добавить сервис в автозагрузку через systemctl (systemd):

    systemctl enable lbarcd@2
    

    ``

    Сервисы, где используются несколько экземпляров, например, LBarcd, требуется проверить конфигурационные файлы, чтобы они имели вид:

    /etc/billing.conf.lbarcd.2
    

    ``

    В /etc/billing.conf.lbarcd.2 нужно будет помимо sysid изменить logfile (/var/log/lbarcd.2.log) и pidfile (/var/run/lbarcd.2.pid), если этого не сделано.

  2. Запустить сервисы:

    systemctl start lbarcd@2.service
    

    ``

  3. Проверить статус

    systemctl status lbarcd@2.service
    

    ``