Установка АСР Казна-39 (ABillS)

Автоматическая установка

Инсталлер находится в файле misc/install.sh. Он интерактивный — все параметры задаются через меню, аргументы командной строки не используются.

Требования

  • Чистый сервер Debian 12/13 или Ubuntu
  • Доступ root
  • Не менее 2 ГБ ОЗУ и 20 ГБ диска
  • Доступ к репозиторию Git (по SSH-ключу или по логину/паролю)

Запуск

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

cd /путь/к/коду/misc
./install.sh

Откроется главное меню:

1) Параметры установки
2) Показать план установки
3) Начать установку
4) Выход

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

Пункт 1 главного меню открывает подменю параметров. В каждом подменю пункт 0 возвращает назад.

1) Каталог установки — куда ставить систему. По умолчанию /usr/ACP.

2) Git-репозиторий:

  • Адрес репозитория — например git@git.it39.su:releases/ACP.git
  • Ветка — по умолчанию master
  • Способ доступа — ssh или https
  • SSH-ключ — путь к приватному ключу (для ssh)
  • Логин и пароль Git — для доступа по https

3) База данных:

  • Имя БД — по умолчанию acp
  • Пользователь БД — по умолчанию acp
  • Пароль БД — если не задать, будет сгенерирован автоматически
  • Хост БД — по умолчанию localhost
  • Пароль root MariaDB — если root без пароля, оставьте пустым

4) Веб-сервер:

  • Домен — домен для nginx
  • Порт HTTPS — по умолчанию 443
  • HTTPS — включить или выключить

5) FreeRADIUS — устанавливать и настраивать ли FreeRADIUS

6) Демо-данные — загружать ли демонстрационные данные (абоненты, тарифы, компании)

7) Состав установки:

  • Устанавливать пакеты
  • Настраивать nginx
  • Создавать БД
  • Клонировать из Git
  • Перезаписывать файлы без вопросов
  • Режим dry-run (только показать, ничего не менять)

8) Сбросить параметры к значениям по умолчанию

Особенности ввода

  • Обычные поля: нажмите Enter, чтобы оставить текущее значение
  • Пароли: Enter — оставить текущий, дефис (-) — сгенерировать новый
  • Да/нет: введите y или n, Enter — оставить текущее

Проверка перед установкой

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

Процесс установки

Пункт 3 главного меню запускает установку. Выполняются шаги:

  1. Проверка окружения — версия ОС, права root, пакетный менеджер
  2. Установка системных пакетов — nginx, fcgiwrap, MariaDB, Perl-модули, FreeRADIUS (если выбран)
  3. Получение кода из Git
  4. Создание каталогов и прав
  5. Настройка базы данных — создание БД, пользователя, импорт схемы acp.sql
  6. Настройка config.pl — подстановка доступов к БД и base_dir
  7. Настройка nginx + fcgiwrap — генерация конфига, самоподписанный SSL-сертификат
  8. Настройка FreeRADIUS (если выбран)
  9. Настройка logrotate — ежедневная ротация логов, хранение 10 дней
  10. Настройка billd и cron — billd как systemd-сервис, периодические задачи в crontab root
  11. Установка демо-данных (если выбрано)

По завершении выводится сводка: каталог установки, параметры БД, адреса веб-интерфейса и админки.

ВАЖНО: сохраните пароль БД — он также записан в libexec/config.pl

Проверка после установки

systemctl status nginx fcgiwrap.socket mariadb billd
curl -sk -o /dev/null -w '%{http_code}\n' https://ваш-домен/

Веб-интерфейс: https://ваш-домен/

Админка: https://ваш-домен/admin/

Службы

  • nginx — веб-сервер
  • fcgiwrap.socket — обработчик CGI
  • mariadb — база данных
  • billd — демон обработки событий биллинга (systemd-сервис, автозапуск)

Периодические задачи

Задачи находятся в crontab пользователя root (редактируются командой crontab -e):

  • 10 0 * * * — ежедневные и ежемесячные задачи биллинга (списания, отчёты)
  • 2 1 * * * — резервное копирование БД

Ротация логов настраивается в /etc/logrotate.d/acp_kazna_39_logs

  • Нет меток