Документация
Полное руководство по установке, настройке и использованию VPS Manager Bot
Быстрый старт
Установка и запуск за 5 минут
Системные требования
Минимальные
- Ubuntu 22.04+
- Python 3.10+
- 1 GB RAM
- 10 GB Disk
Рекомендуемые
- Ubuntu 24.04 LTS
- Python 3.11+
- 2 GB RAM
- 20 GB SSD + 2 CPU cores
Для мультисерверного управления с 10+ нодами рекомендуется выделить отдельный VPS под бота с 4 GB RAM.
Подготовка
- Получите токен бота Напишите @BotFather и создайте нового бота командой /newbot
- Узнайте свой Telegram ID Отправьте любое сообщение @userinfobot — он вернет ваш ID
- Подготовьте сервер Установите необходимые пакеты командой ниже
sudo apt update && sudo apt install -y curl git
Установка одной командой
Запустите универсальный скрипт установки:
bash <(wget -qO- https://raw.githubusercontent.com/jatixs/tgbotvpscp/main/deploy.sh)
Выберите режим установки:
Изолированный пользователь, мониторинг ресурсов, управление Docker-контейнерами и сервисами, бэкапы
Полный доступ: перезагрузка сервера, системные логи (journalctl), оптимизация, Fail2Ban, SSH-мониторинг
Secure: CPU/RAM/Disk мониторинг, Docker, systemd-сервисы,
веб-панель,
ноды
Root добавляет: reboot/shutdown, journalctl, sysctl-оптимизация,
Fail2Ban, SSH-логи, apt upgrade
После выбора режима введите:
- Bot Token — токен от @BotFather
- Admin User ID — ваш Telegram ID
Бот запущен! API и
веб-интерфейс доступны на
http://YOUR_IP:8080
Подключение удаленных серверов
Добавление нод для мультисерверного управления
На главном боте:
На удаленном сервере:
bash <(wget -qO- https://raw.githubusercontent.com/jatixs/tgbotvpscp/main/deploy.sh)
Выберите 7) Установить НОДУ (Клиент) и
введите:
- URL агента: http://MAIN_IP:8080
- Токен ноды
Можно передать параметры
сразу:
bash <(wget -qO- .../deploy.sh) --agent=http://IP:8080 --token=TOKEN
Нода появится в списке через несколько секунд. Вы можете мониторить состояние ноды в одном окне/чате!
Веб-интерфейс
Доступ и использование веб-панели управления
Доступ к веб-панели
http://YOUR_SERVER_IP:8080
HTTP:
Ваш Telegram ID + пароль из установщика, или
Magic Link из бота
HTTPS: Виджет Telegram (при привязке домена к
боту в
BotFather)
Через @userinfobot или в боте: Управление → Пользователи → Мой ID
Основные функции панели
- Графики CPU/RAM/Disk
- Список всех нод
- Настройки оповещений
- Менеджер сервисов
- История уведомлений
- Управление пользователями
Веб-интерфейс полностью адаптирован для мобильных устройств. Управляйте сервером с телефона!
Конфигурация
Настройка и персонализация бота
Основные настройки (.env)
# Telegram Bot
BOT_TOKEN=your_bot_token
ADMIN_ID=your_telegram_id
# Web Server
WEB_PORT=8080
SECRET_KEY=auto_generated
# Database
DATABASE_URL=sqlite:///data/database.db
# Security
ENABLE_WAF=true
ENABLE_RATE_LIMIT=true
MAX_LOGIN_ATTEMPTS=5
Большинство настроек генерируются автоматически при установке. Редактируйте .env только при необходимости.
Настройки алертов
Можно изменить в веб-интерфейсе Settings → Alerts Config:
- CPU: 80%
- RAM: 90%
- Disk: 85%
- ⏱️ Интервал: 30 сек
Бот отправляет алерты только при превышении порогов и автоматически уведомляет, когда ситуация нормализовалась.
Безопасность
Управление доступом и защита системы
Смена пароля веб-интерфейса
Никогда не используйте стандартный пароль admin в продакшене! Смените его сразу после первого входа.
Управление пользователями
Добавление нового пользователя через Telegram:
Роли и права
Обслуживание
Мониторинг, обновление и резервное копирование
Просмотр логов
Docker:
docker logs tg-bot
Systemd:
sudo journalctl -u tg-bot -f
Перезапуск бота
Docker:
docker restart tg-bot
Systemd:
sudo systemctl restart tg-bot
Обновление до новой версии
cd /opt/tg-bot
git pull origin main
docker-compose down && docker-compose up -d --build
Встроено прямо из Telegram-бот!
Резервное копирование
Важные файлы для бэкапа:
/opt/tg-bot/.env
Конфигурация
бота
/opt/tg-bot/data/database.db
База данных
/opt/tg-bot/data/configs/
Зашифрованные
конфиги
Настройте cron-задачу для автоматического резервного копирования этих файлов на внешнее хранилище.
Дополнительная документация
Полезные ресурсы для углубленного изучения
Решение проблем
Часто встречающиеся проблемы и их решения
Бот не запускается
- Проверьте правильность BOT_TOKEN
- Убедитесь, что порт 8080
свободен:
sudo netstat -tulpn | grep 8080 - Проверьте логи:
docker logs tg-bot
Нода не подключается
- Проверьте доступность агента:
curl http://AGENT_IP:8080/health - Убедитесь, что токен правильный
- Проверьте firewall на агенте
Веб-интерфейс недоступен
- Проверьте, что бот запущен:
docker ps - Откройте порт 8080 в firewall:
sudo ufw allow 8080/tcp - Попробуйте через localhost:
http://localhost:8080
Нет оповещений
- Проверьте настройки Alerts Config в веб-панели
- Убедитесь, что бот не заблокирован в Telegram
- Проверьте пороговые значения (CPU/RAM/Disk)
Нужна помощь?
Не нашли ответ в документации? Сообщество всегда готово помочь!
Задайте вопрос в Discussions или сообщите о баге в Issues