Skip to content

Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

SubNode: Система управления VLESS-подписками

Important

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

SubNode — это комплексное решение для автоматизации продажи и управления VLESS-конфигурациями через Telegram-бота. Проект включает в себя панель управления (API), бота для пользователей и скрипты автоматического развертывания.

🚀 Основные возможности

  • Telegram Bot: Полный цикл покупки подписки, проверка статуса, получение ключей и уведомления о продлении.
  • Интеграция с RollyPay: Прием платежей через СБП, криптовалюты (CryptoBot, xRocket) и карты.
  • Управление узлами: Автоматическое добавление пользователей на VLESS-сервер.
  • Безопасность: Генерация уникальных путей для администрирования и подписок, защита через переменные окружения.
  • Автоматизация: Скрипты для быстрой настройки VPS, установки Nginx, SSL и настройки обхода блокировок (Zapret).
  • Умные бэкапы: Автоматическое резервное копирование базы данных и конфигураций.

🛠 Технологический стек

  • Backend: Python 3.10+, FastAPI, Pydantic (Settings).
  • Bot: Aiogram 3.x (асинхронный фреймворк).
  • Database: SQLite (SQLAlchemy ORM).
  • Web Server: Nginx + Gunicorn/Uvicorn.
  • Infrastructure: Shell-скрипты для Linux (Ubuntu/Debian) и PowerShell для локальной настройки.

📦 Установка и запуск

1. Подготовка сервера

Рекомендуется использовать чистую Ubuntu 22.04/24.04.

2. Клонирование репозитория

git clone https://github.com/<YOUR_GITHUB_USERNAME>/SubNode.git
cd SubNode

3. Настройка окружения

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

cp .env.example .env
nano .env

Необходимые параметры:

  • BOT_TOKEN: Токен вашего бота от @BotFather.
  • ROLLYPAY_API_KEY: Ключ из личного кабинета RollyPay.
  • ADMIN_USERNAME/ADMIN_PASSWORD: Данные для доступа к API.

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

Запустите основной скрипт установки, который настроит зависимости, создаст базу данных и сконфигурирует системные сервисы:

chmod +x install.sh
./install.sh

🔒 Безопасность

Проект разработан с учетом требований безопасности:

  • Все секретные данные (ключи, пароли, токены) вынесены в файл .env, который игнорируется системой контроля версий.
  • Использование SSH-ключей для управления сервером (через VpsKeySetup.ps1).
  • Автоматическая санация логов и защита от переполнения диска бэкапами.

📖 Документация

Подробные инструкции по отдельным модулям находятся в папке documentation/:

  • install.sh: Инструкция по развертыванию.
  • VpsKeySetup.ps1: Настройка безопасного доступа к VPS.
  • zapret: Инструкции по настройке средств обхода DPI.

⚖️ Лицензия

Этот проект распространяется под лицензией MIT. Использование кода разрешено в образовательных и коммерческих целях.


Developed with ❤️ for the community.

About

High-performance VLESS, Xray & Shadowsocks subscription manager and proxy node aggregator with automated latency testing.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages