Skip to content

JB-SelfCompany/awg_bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WireGuard / AmneziaWG Telegram Bot

Телеграм-бот на Python для управления WireGuard / AmneziaWG. Этот бот позволяет легко управлять клиентами.

Используется библиотека aiogram версии 2.25.2.
Протестировано на Ubuntu, версии 20.04, 22.04, 24.04.

Оглавление

Возможности

  • Добавление клиентов
  • Удаление клиентов
  • Блокировка/разблокировка клиентов
  • Создание временных конфигураций (1 час, 1 день, 1 неделя, 1 месяц, без ограничений)
  • Создание конфигурации с ограничением сетевого трафика (5 GB, 10 GB, 30 GB, 100 GB, без ограничений)
  • Получение информации об IP-адресе клиента (берется из Endpoint, используется API ресурса ip-api.com)
  • Создание ключа в формате vpn:// при генерации нового клиента (так же, при получении конфигурации клиента), для использования в AmneziaVPN
  • Создание резервной копии

Установка

  1. Установите WireGuard или AmneziaWG (без данного шага бот РАБОТАТЬ НЕ БУДЕТ).

  2. Создайте бота в Telegram:

  • Откройте Telegram и найдите бота BotFather.
  • Начните диалог, отправив команду /start.
  • Введите команду /newbot, чтобы создать нового бота.
  • Следуйте инструкциям BotFather, чтобы:
    • Придумать имя для вашего бота (например, WireGuardManagerBot).
    • Придумать уникальное имя пользователя для бота (например, WireGuardManagerBot_bot). Оно должно оканчиваться на _bot.
  • После создания бота BotFather отправит вам токен для доступа к API. Его запросит бот во время первоначальной инициализации.
  1. Получите ваш Telegram ID с помощью Get My ID, просто написав боту.

  2. Загрузите и запустите скрипт install.sh, с помощью которого будет автоматически установлен бот, со всеми зависимостями, в том числе, в качестве системной службы (автозапуск):

    curl -O https://raw.githubusercontent.com/JB-SelfCompany/awg_bot/main/install.sh && chmod +x install.sh && ./install.sh

Запуск

  1. Добавьте бота в Telegram и отправьте команду /start или /help для начала работы.

Заметки

Для обновления бота, необходимо запустить скрипт install.sh. В меню, необходимо выбрать пункт Проверить обновления.

При создании резервной копии, в архив добавляется директория connections (создается и содержит в себе логи подключений клиентов), conf, png, и сам конфигурационный файл.

Вы можете дополнительно воспользоваться скриптом для генерации конфигурации, для WireGuard или AmneziaWG, если желаете добавить отдельные подсети/интерфейсы/конфигурационные файлы:

./genconf.sh

Важно: Для корректной работы требуется запуск бота от имени пользователя с правами sudo, если WireGuard / AmneziaWG настроен с повышенными привилегиями. WireGuard / AmneziaWG должен быть настроен и запущен на сервере до использования бота.

Поддержка

Поддержать разработчика можете следующими способами:

  • Boosty
  • LTC ltc1qsa49jtpxau9f28fej7vpzj99lstx44792k4ack
  • XMR 43ojbNWXSNCWjXAk1RbTvidACZKrWSpV7hXRosn9UQJhWEHHkzCB4g8Hh5sHhSzU7gBpwWkMFhgwuPLLuox6GqEQN7CLgHp
  • BTC bc1qt75kx0lwsw2npfh06kfq37gf97eper00sxp3tf

Если у вас возникли вопросы или проблемы с установкой и использованием бота, создайте issue в этом репозитории или обратитесь к разработчику.

About

WireGuard / AmneziaWG Telegram Bot

Resources

License

Stars

Watchers

Forks