2.1 KiB
2.1 KiB
tg-admin-bot
Telegram-бот администратора для Linux-серверов. Даёт быстрый доступ к статусам, бэкапам и операциям через чат.
Возможности
- Docker: статус, рестарт, логи (tail, since, фильтр).
- Arcane: список проектов, refresh, up/down, restart.
- Бэкапы (restic): снапшоты, статистика репозитория, запуск бэкапа, очередь, restic check, weekly report.
- Система: диски, безопасность, проверка URL, метрики, обновления, upgrade, reboot, железо, SSL (NPMplus).
- Алерты: диск/нагрузка и SMART с cooldown.
- Аудит: все нажатия и сообщения (ротация раз в неделю).
Требования
- Linux-хост.
- Python 3.11+ (проверено на 3.13).
- Системные утилиты по необходимости:
- docker
- restic
- smartctl (smartmontools)
- sudo для reboot/upgrade/backup скриптов
- systemd (для таймеров/статуса, желательно)
Установка
python -m venv .venv
source .venv/bin/activate
pip install -r req.txt
Настройка
- Скопировать пример:
cp config.example.yaml config.yaml
- Заполнить минимум:
telegram.tokentelegram.admin_id
- Опционально:
- путь к restic env (
paths.restic_env) - docker autodiscovery или явный список
docker.containers - Arcane и NPMplus API
- аудит логов
Подробности в CONFIG.md.
Запуск
python bot.py
Лицензия
Copyright (C) 2026 benya
GNU GPL v3.0. Полный текст в LICENSE.
Примечания
- Для NPMplus с self-signed TLS установи
npmplus.verify_tls: false. - Бот использует
sudoдля части операций — настрой права. - Аудит по умолчанию пишется в
/var/server-bot/audit.log.