# Telegram WEB Proxy на своём VPS В каталоге есть два варианта: - `install-with-panel.sh` — рекомендуемый вариант с минимальной веб-панелью, отдельными secrets, QR-кодами и отзывом доступа; - `install.sh` — облегчённый вариант без панели и с одним общим secret. Оба варианта предназначены для отдельного VPS. Панельный вариант использует зафиксированный релиз `WEB PANEL PROXY v2.0.2`, проверяет SHA-256 архива до запуска и разворачивает официальный Telegram relay/MTProxy. ## Что подготовить - VPS `x86_64`: Ubuntu 22.04/24.04/26.04 либо Debian 12/13; - минимум 1 vCPU, 1 ГБ RAM и 10 ГБ диска; комфортнее 2 vCPU и 2 ГБ RAM; - отдельный поддомен, например `proxy.example.com`; - A-запись поддомена на публичный IPv4 VPS; - открытые входящие TCP-порты 80 и 443; SSH-порт 22 — только для вашего IP, если это возможно; - DNS-запись без CDN/проксирования (в Cloudflare — серое облако, режим `DNS only`). Не публикуйте AAAA-запись, если на VPS нет исправно работающего публичного IPv6. ## Запуск Для варианта с панелью скопируйте `install-with-panel.sh` на VPS и выполните: ```bash sudo bash install-with-panel.sh ``` Установщик спросит домен, email, логин и пароль панели. Адрес панели создаётся случайным и сохраняется в `/root/telegram-web-panel-address.txt`. Для варианта без панели скопируйте `install.sh` и выполните: ```bash sudo bash install.sh --hostname proxy.example.com --email admin@example.com ``` Аргументы можно не указывать — скрипт спросит домен и email сам: ```bash sudo bash install.sh ``` Secret создаётся на сервере и не попадает в историю shell. После установки скрипт выводит: - hostname; - 32-символьный secret; - готовую ссылку `tg://webproxy?...`; - альтернативную ссылку `https://t.me/webproxy?...`. Копия реквизитов сохраняется с правами `0600` в `/root/telegram-web-proxy-access.txt`. ## Важные ограничения - WEB Proxy пока имеет статус proof of concept. - Основной поддерживаемый клиент — Telegram Desktop 7.1.0 или новее: именно в 7.1.0 в настройки подключения добавлен тип WEB Proxy. - Обычные мобильные релизы Telegram могут не поддерживать этот тип прокси. Экспериментальная Android-реализация существует отдельно; iOS заявлен как план. - Это прокси только для Telegram, не VPN для всего устройства. - Один hostname обслуживает один relay; для второго VPS используйте другой поддомен и другой secret. ## Проверка после установки ```bash systemctl status caddy tproxy-firewall mtproxy tproxy-server --no-pager curl -fsS http://127.0.0.1:8081/healthz curl -fsS http://127.0.0.1:8081/readyz curl -fsS https://proxy.example.com/ ss -lntp sudo nft list table inet tproxy_backend ``` Снаружи должны быть доступны только 80/443 (и ваш SSH-порт). Порты 2398, 8080, 8081 и 8888 наружу открывать нельзя. ## Почему скрипт останавливается на занятом 80/443 Официальный автоматический установщик заменяет активную конфигурацию Caddy. Чтобы случайно не сломать существующие сайты, этот wrapper прекращает установку при обнаружении слушателей на 80/443 или существующего `/etc/caddy/Caddyfile`. Для занятого VPS нужна ручная интеграция с текущим reverse proxy.