Skip to content

vldanilovsky/wg-telebot

Repository files navigation

WireGuard Telegram Monitor

Мониторинг подключений WireGuard с уведомлениями в Telegram.

Что делает

  • Автоматически находит всех клиентов WireGuard
  • Отправляет уведомление когда клиент подключился
  • Отправляет уведомление когда клиент отключился
  • Отвечает на команды /peers, /status, /help

Установка

git clone https://github.com/vldanilovsky/wg-telebot.git
cd wg-telebot
cp config/config.yml.example config/config.yml
nano config/config.yml  # Укажите chat_id
mkdir -p secrets && echo "YOUR_TOKEN" > secrets/telegram_token.txt
docker compose up -d

Конфигурация

config/config.yml:

chat_id: 123456789         # Ваш Telegram chat ID (обязательно!)
interval: 2                # Как часто проверять (сек)
telegram_timeout: 3        # Timeout для Telegram API (сек)
down_grace_sec: 180        # Сколько сек без handshake = отключен

peers:                     # Опционально - для красивых имён
  "10.6.0.2": "pc"
  "10.6.0.3": "phone"

Как получить chat_id

# Напишите боту, потом:
curl "https://api.telegram.org/botYOUR_TOKEN/getUpdates" | grep '"id"'

Команды

docker compose up -d        # Запустить
docker compose logs -f      # Логи
docker compose restart      # Перезапуск
docker compose down         # Остановить

Команды бота

  • /peers - список клиентов
  • /status - статистика
  • /help - справка

Требования

  • Docker
  • WireGuard на хосте
  • network_mode: host и privileged: true в docker-compose.yml

Лицензия

MIT

About

WireGuard connection monitor with Telegram notifications

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages