Решение проблем СмИТ Биллинг 1.0
Сборник статей по диагностике и решению типичных проблем при эксплуатации системы СмИТ Биллинг 1.0. Каждый раздел содержит описание симптомов, возможные причины и пошаговые инструкции по устранению.
Общие вопросы
- Вопросы одной строкой Краткие ответы на частые вопросы: как узнать версию биллинга, как перезапустить сервис, где находятся логи, как проверить статус лицензии, как очистить кэш. Формат «вопрос — ответ» для быстрого поиска решения.
- FAQ по установке с USB Решение проблем при установке с USB-носителя: BIOS не видит USB, ошибки при загрузке установщика, проблемы с разметкой диска, сбои при копировании файлов. Рекомендации по подготовке загрузочного USB-накопителя.
- Проблемы с оборудованием Диагностика аппаратных проблем сервера: перегрев процессора, ошибки оперативной памяти (memtest), деградация RAID-массива, выход из строя жёсткого диска (SMART-диагностика), проблемы с сетевыми адаптерами.
Абоненты и авторизация
-
Абоненты не могут авторизоваться
Диагностика проблем аутентификации через RADIUS. Проверка: корректность логина/пароля, статус аккаунта (не заблокирован ли), доступность RADIUS-сервера, shared secret на NAS, наличие IP-пулов. Анализ логов:
docker compose logs freeradius. -
Абонент не блокируется! Услуга доступна, но не должна быть!
Проблемы с блокировкой абонентов: NAS не отключает сессию (проверить CoA/PoD), абонент переподключается после блокировки, некорректная работа Celery-задачи блокировки. Проверка:
docker compose logs celery | grep abonent_block, логи RADIUS Disconnect, настройки CoA на NAS. - У абонента не работает услуга Диагностика неработающих услуг: проверка привязки услуги к абоненту, статус услуги (активна/приостановлена), баланс абонента, корректность тарифного плана, наличие необходимых RADIUS-атрибутов в ответе. Пошаговая проверка от биллинга до NAS.
- У абонента теряется IP-адрес Проблемы с выдачей IP-адресов: конфликты в IP-пулах, дублирование адресов, истечение lease-time, некорректная работа DHCP-relay. Проверка: настройки IP-пулов в биллинге, ARP-таблицы на NAS, логи DHCP-сервера.
Биллинг и платежи
-
Абонентская плата не списывается!
Проблемы со списанием абонентской платы: не запущена Celery-задача
billing_worker, ошибки в расписании тарификации, некорректная дата начала действия тарифа. Проверка:docker compose logs celery | grep billing_worker,docker compose ps celery celery-beat. - Платёжные системы. Не проходят платежи. Диагностика проблем с приёмом платежей: проверка API-ключей платёжной системы, корректность callback-URL, SSL-сертификат, журнал входящих запросов. Поддерживаемые платёжные системы: Robokassa, ЮKassa, Сбербанк, QIWI и др.
- Изменение значения НДС Корректировка ставки НДС в системе: изменение в настройках биллинга, пересчёт тарифов, обновление шаблонов документов, настройка кассового аппарата. Необходимо обновить ставку до начала нового расчётного периода.
- Постоянно перевыставляются акты Проблемы с многократным формированием актов: некорректная дата закрытия периода, дублирование задач в расписании, ошибки в шаблоне документа. Решение: проверить настройки расчётного периода и расписание задач.
-
Не работает web-касса
Проблемы с онлайн-кассой: ошибки подключения к ОФД, истёк срок фискального накопителя, некорректные реквизиты организации в настройках. Проверка:
docker compose logs web | grep fiscal.
Сервер и производительность
-
Биллинг медленно работает
Диагностика производительности: проверка нагрузки на CPU (
top,htop), использование RAM (free -m), дисковые операции (iostat), медленные SQL-запросы (PostgreSQLpg_stat_statements). Оптимизация: увеличение shared_buffers, настройка work_mem, добавление индексов. - Медленно работает Биллинг и Биллинг+Софтроутер Проблемы производительности при совмещённой установке (биллинг + софтроутер на одном сервере). Возможные причины: DDoS-атаки на абонентов, высокая нагрузка от WordPress-сайтов, conntrack table overflow. Решение: разделение сервисов, настройка rate-limiting.
-
Мало места на диске
Очистка дискового пространства: очистка Docker-логов (
docker system prune), ротация логов контейнеров, удаление старых бэкапов PostgreSQL, очистка RADIUS-логов. Команда проверки:df -h,docker system df. - Мониторинг сервера с atop Использование утилиты atop для детального мониторинга: CPU по ядрам, дисковая активность по устройствам, сетевой трафик по интерфейсам, потребление ресурсов по процессам. Установка и настройка автоматического сбора статистики.
- Установка node_exporter для мониторинга с Prometheus Настройка экспорта метрик в Prometheus: установка node_exporter, конфигурация scrape-интервала, настройка Grafana-дашбордов для визуализации метрик биллинга. Рекомендуемые дашборды: Node Exporter Full, PostgreSQL Overview.
- Система мониторинга. Сервер недоступен Проблемы с системой мониторинга: ложные срабатывания, сервер не отвечает на проверки. Проверка: сетевая доступность (ping, traceroute), статус агента мониторинга, настройки firewall (порт 10050 для Zabbix, 9100 для node_exporter).
-
Сетёвка от Intel зависает
Проблемы с сетевыми картами Intel (e1000e, igb, ixgbe): зависание интерфейса под нагрузкой, сброс линка. Решение: обновление драйвера, отключение offload-функций (
ethtool -K eth0 tso off gso off), настройка кольцевых буферов.
Сеть и доступ
-
Не работает интернет
Диагностика отсутствия интернета на сервере биллинга: проверка маршрутов (
ip route), DNS (nslookup), firewall, NAT-правил. Если интернет не работает у абонентов — проверить RADIUS, NAS, демоны авторизации. -
Не доступен сайт, личный кабинет
Проблемы с веб-интерфейсом и личным кабинетом: не запущен контейнер web/nginx, ошибки SSL-сертификата, проблемы с DNS. Проверка:
docker compose ps,docker compose exec nginx nginx -t,docker compose logs nginx. -
Решение проблем DHCP
Диагностика DHCP: абоненты не получают IP-адрес, конфликты адресов, неправильный lease-time. Проверка:
tcpdump -i eth0 port 67 or port 68, настройки DHCP-пулов, relay-агента на коммутаторах, option 82. -
Проверка доступа в сеть
Тестирование сетевого доступа: ping, traceroute, MTR, проверка портов (
telnet,nc), анализ трафика (tcpdump). Пошаговая методика диагностики от клиента до сервера биллинга. - Проброс портов до биллинга на KVM Настройка проброса портов при виртуализации KVM: iptables DNAT/SNAT правила, настройка bridge-интерфейсов, проброс портов для RADIUS (1812/1813), веб-интерфейса (80/443), SSH (22). Пример правил iptables.
- Циклическая переадресация в личном кабинете Бесконечный редирект (ERR_TOO_MANY_REDIRECTS) в личном кабинете абонента. Причины: некорректная настройка SSL/HTTP редиректа, проблемы с cookies, reverse-proxy передаёт неправильный X-Forwarded-Proto. Решение: проверить конфигурацию nginx и настройки SECURE_PROXY_SSL_HEADER.
-
Не работает поиск
Диагностика функции поиска абонентов: не построен поисковый индекс, повреждён индекс, недостаточно дискового пространства. Перестроение индекса:
docker compose exec web python manage.py rebuild_index --noinput. - Перенос индекса поиска на другой диск Миграция поискового индекса на отдельный диск (SSD) для повышения скорости поиска: остановка сервиса, копирование каталога индекса, создание символьной ссылки, перезапуск сервиса. Рекомендуется использовать SSD для хранения индекса.
Безопасность
-
Сброс пароля root
Восстановление пароля root при утере: загрузка в однопользовательский режим (single-user mode), редактирование параметров GRUB, выполнение
passwd root. Требуется физический или консольный доступ к серверу (KVM/IPMI). -
Не удаётся восстановить учётную запись администратора
Восстановление доступа администратора в веб-интерфейсе биллинга: сброс пароля:
docker compose exec web python manage.py changepassword admin, создание суперпользователя:docker compose exec web python manage.py createsuperuser. - Необходимо повысить защиту сервера Усиление безопасности: смена стандартных портов (SSH, веб), настройка fail2ban, ограничение доступа по IP через firewall, отключение неиспользуемых сервисов, настройка SSL с сильными шифрами, регулярное обновление системы.
- Пытаются взломать заявку на подключение, но она отключена Защита от атак на форму заявки: блокировка IP-адресов атакующих через firewall, настройка rate-limiting в nginx, проверка логов на предмет сканирования уязвимостей. Рекомендуется добавить captcha на публичные формы.
Прочее
- Настройка СМС-шлюза Robokassa Конфигурация СМС-шлюза через сервис Robokassa: настройка API-ключей, MD5-подписи, шаблонов сообщений. Используется для отправки уведомлений абонентам о списаниях, платежах и блокировках.
- История внесения изменений в биллинге Аудит изменений в системе: просмотр журнала действий пользователей (кто, когда, какие данные изменил), фильтрация по дате/пользователю/объекту, экспорт журнала аудита. Раздел Система → Аудит в веб-интерфейсе.