Взлом
Уважаемые гости! При посещении нашего сайта просим вас ознакомиться с разделами форума, прежде чем оставлять ваши объявления и т.п., а также при обращении за помощью просим быть внимательными: на сайте есть как проверенные специалисты, так и непроверенные. Если вы обратились к специалисту, который проверку НЕ проходил, рекомендуем воспользоваться услугой гарант-сервиса. Спасибо, что посетили форум хакеров.

Свой VPN-сервис на WireGuard за один вечер: Telegram-бот, оплата и админка

ShadowFox

Обычный
Пользователь
Регистрация
6 Ноя 2025
Сообщения
138
Реакции
1
Баллы
18
Разворачиваем свой VPN-сервер с оплатой через Telegram.
maxresdefault.jpg

Ситуация, думаю, знакомая: бесплатные VPN тормозят, сливают данные или просто отваливаются в самый неподходящий момент. Платные сервисы стоят денег, и непонятно, кому ты платишь и куда уходят логи. Выход — сделать свой VPN. Кажется сложно? На самом деле нет.

Я сам долго откладывал, думал, что там надо быть гуру сетевых технологий. А потом сел и за вечер поднял рабочий сервис на WireGuard. Друзья попросили доступ — пришлось делать бота для раздачи конфигов. Потом добавил оплату, чтобы хостинг окупался. В итоге получилась полноценная система, которая работает без моего участия.

В этой статье расскажу, как повторить это самому. Без лишней воды, только конкретика.

---

Почему WireGuard, а не OpenVPN

Если ты хоть раз настраивал OpenVPN, то знаешь, сколько там геморроя: куча сертификатов, танцы с бубном, низкая скорость. WireGuard работает иначе — он вшит в ядро Linux (начиная с версии 5.6), проще в настройке и быстрее.

Плюсы WireGuard:

· Минимум кода — около 4000 строк против сотен тысяч у OpenVPN.
· Высокая скорость — близкая к нативной.
· Простая настройка — ключи генерируются за секунду.
· Современная криптография.

Минус только один — он использует UDP, и если твой провайдер его режет, могут быть проблемы. Но для большинства случаев это лучшее решение.

---

Что мы будем делать

Я покажу, как поднять сервер с WireGuard, добавить туда Telegram-бота для управления подписками и настроить автоматическую оплату. В итоге у тебя будет:

· Рабочий VPN-сервер на WireGuard.
· Бот в Telegram, где пользователи могут купить подписку, получить конфиг и инструкцию.
· Админ-панель в том же боте для управления пользователями.
· Автоматические уведомления об окончании подписки.

Всё это работает на Ubuntu 20.04 или 22.04.

---

Как выглядит бот со стороны пользователя

Я не буду тут вставлять скриншоты, но опишу, как оно работает.

Человек заходит в бота, видит приветствие. Ему сразу дается тестовый период (например, 45 минут). В главном меню кнопки:

· Статус подписки — сколько осталось, активна ли.
· Продлить — выбор срока и оплата.
· Как подключить — конфиг-файл и инструкция для разных устройств.

Если пользователь выбирает продление, бот создает счет. Оплата проходит прямо в Telegram — подключены любые платежные системы, которые поддерживает платформа. После оплаты подписка продлевается автоматически.

Для админа есть отдельное меню (доступное только по ID). Там можно:

· Посмотреть список всех пользователей.
· Отфильтровать активных.
· Продлить или отключить подписку конкретному человеку.
· Создавать статических пользователей (без Telegram) и генерировать для них конфиги.

Бот сам напоминает о скором окончании подписки за день, за час и за 10 минут. Тексты всех сообщений настраиваются в конфиге.

---

Что нужно для запуска

Нам понадобится:

· VPS с Ubuntu 20.04 или 22.04 (минимальные требования — 1 ядро, 512 МБ RAM, хватит за глаза).
· Домен (необязательно, но удобно).
· Telegram-бот, зарегистрированный у BotFather.
· Платежная система, подключенная к Telegram (например, через ЮKassa или другую).

Весь код, который я использую, лежит в открытом доступе. Ссылки будут по ходу статьи.

---

Установка: одна команда

Я заморочился и написал скрипт, который ставит всё одной командой. Он работает на Ubuntu 20.04 и 22.04 (на других дистрибутивах не тестировал, но может и взлететь).

Запускаем:

Bash:
 sudo wgethttps://raw.githubusercontent.com/Obi0Wan0Kenobi/ObiVpn/master/Wireguard-installer-with-Adminpanel.sh
&& chmod 774 Wireguard-installer-with-Adminpanel.sh
&& ./Wireguard-installer-with-Adminpanel.sh

Скрипт скачивается, получает права на выполнение и запускается.

Дальше будет интерактивный диалог. Скрипт сам определит, что может, и спросит то, что нужно ввести вручную.

Вот пример того, что он спросит:

Код:
 Dobro pozhalovat'v ustanovshchik WireGuard!
1.Vvedite publichnyj IPv4 adress: 185.200.190.143 2.Vvedite setevoj interfejs:ens3 3.Vyberite port kotoryj budet ispol'zovat'WireGuard [1-65535]: 49584 4.Vyberite pervyj DNS server kotoryj budut ispol'zovat'klienty: 1.1.1.1 5.Vyberite vtoroj DNS server kotoryj budut ispol'zovat'klienty (opcional'no): 1.0.0.1 6.Hotite li ustanovit'srazu Telegram bota(1 - Da, 0 - Net): 1 7.Vvedite API-klyuch ot vashego Telegram bota:************* 8.Vvedite klyuch ot vashej platezhnoj sistemy:************* 9.Vvedite Telegram-id administratora:*****

Разберем каждый пункт:

· Публичный IPv4 — это IP твоего сервера. Можно узнать командой ip a или в панели хостинга.
· Сетевой интерфейс — обычно eth0, ens3 или что-то подобное. Тоже видно в ip a.
· Порт WireGuard — скрипт предлагает случайный из динамического диапазона, но можно вбить свой.
· DNS-серверы — для клиентских конфигов. По умолчанию стоят Cloudflare (1.1.1.1 и 1.0.0.1).
· Установить Telegram-бота — если хочешь админку и управление, ставь 1.
· API-ключ бота — берешь у BotFather.
· Ключ платежной системы — если хочешь принимать оплату.
· Telegram ID администратора — твой ID, чтобы бот понимал, кто админ. Узнать можно у бота @userinfobot.

---

Настройка бота: конфиги

После установки бот уже работает, но его нужно настроить под себя. Основные настройки лежат в двух файлах.

config.json

Здесь базовые параметры:

JSON:
 { "admin_tg_id": 123456789, "one_month_cost": 100, "trial_period": 2700, "UTC_time": 3, "tg_token": "ваш_токен_бота", "tg_shop_token": "токен_платежной_системы" }

· admin_tg_id — твой Telegram ID.
· one_month_cost — цена подписки в рублях. Лучше ставить чуть выше курса доллара, потому что Telegram конвертирует по своему курсу.
· trial_period — длительность тестового периода в секундах (2700 = 45 минут).
· UTC_time — часовой пояс (3 = Москва).
· tg_token — токен бота от BotFather.
· tg_shop_token — токен платежной системы. Если оставить пустым, оплата будет отключена.

messages.json

Здесь все тексты, которые бот отправляет пользователям. Можно менять как хочешь, поддерживается HTML-форматирование (жирный, курсив, ссылки).

Пример:

JSON:
 { "hello_message": "<b>Почему стоит выбрать Obi VPN?</b>...", "trial_message": "Чтобы вы смогли оценить наш VPN...", "how_to_connect_info": "Ваш конфиг для подключения к VPN...", "success_pay_message": "Оплата прошла успешно...", "ended_sub_message": "Ваша подписка закончилась...", "alert_to_renew_sub": "До конца действия..." }

Названия говорят сами за себя. В how_to_connect_info можно вставить инструкцию для разных устройств: Windows, Android, iOS.

---

Как получить платежный токен

Чтобы принимать оплату прямо в Telegram, нужен токен магазина. Делается это так:

1. Идешь к BotFather.
2. Вводишь /mybots, выбираешь своего бота.
3. Жмешь "Payments".
4. Там список доступных платежных систем. Выбираешь подходящую, читаешь инструкцию.
5. Подключаешь систему (обычно надо зарегистрироваться, подтвердить юрлицо или ИП).
6. После подключения в BotFather появится токен — его и вставляешь в tg_shop_token.

Если оставить поле пустым, бот просто не будет предлагать оплату, можно раздавать доступ бесплатно или вручную.

---

Статические пользователи

В боте есть раздел "Статические пользователи". Это для тех, у кого нет Telegram, или для разовых доступов. Можно создавать таких пользователей вручную, система сгенерирует для них конфиг. Удобно, если надо дать VPN другу, который не хочет ставить Telegram.

---

Выбор хостинга

Самый важный момент — где размещать сервер. WireGuard сам по себе быстрый, но многое зависит от канала и географии.

Советую не брать сервер сразу на год. Лучше попробовать разные регионы: Европу, США, Азию. Погоняй тесты скорости, посмотри, где у тебя пинг меньше. Провайдеры типа DigitalOcean, Vultr, Hetzner дают почасовую оплату — удобно для экспериментов.

Минимальные требования: 1 ядро, 512 МБ RAM, 10 ГБ диска. Этого хватит на сотню пользователей, если не гонять торренты 24/7.

---

Безопасность и что важно помнить

Несколько советов, чтобы сервер не упал и не взломали:

· Обновляй систему — регулярно делай apt update && apt upgrade.
· Закрой лишние порты — кроме 22 (SSH) и порта WireGuard, всё должно быть закрыто.
· Не запускай бота от root — в скрипте это учтено, но на всякий случай проверь.
· Делай бэкапы — конфиги лежат в /etc/wireguard и в папке бота, сохраняй их.
· Следи за нагрузкой — если пользователей много, может понадобиться больше ресурсов.

Что в итоге

За один вечер можно поднять полноценный VPN-сервис, который работает без участия человека. Пользователи сами регистрируются, платят, получают конфиги. Админ только смотрит статистику и изредка пополняет баланс на хостинге.

Я таким пользуюсь сам и раздаю друзьям. Хостинг окупается, нервы целы. Если у тебя есть базовые навыки работы с Linux — справишься без проблем.

Все исходники, скрипты и инструкции я оставил в статье.
 
Яндекс.Метрика