Данный форк представляет собой лучшее от старых версий TG-WS и новых - entrypoint SOCKS5 и redirect на сервера Cloudflare. Подразумевается использование в качестве Docker-контейнера на backend.
Локальный SOCKS5-прокси для Telegram Desktop, который ускоряет работу Telegram, перенаправляя трафик через Cloudflare. Данные передаются в том же зашифрованном виде, а для работы не нужны сторонние сервера.
Telegram Desktop → SOCKS5 Proxy (127.0.0.1:1080) → Cloudflare → Telegram DC
- Приложение поднимает SOCKS5 прокси на
127.0.0.1:1080 - Перехватывает подключения к IP-адресам Telegram
- Извлекает DC ID из MTProto obfuscation init-пакета
- Устанавливает WebSocket (TLS) соединение через Cloudflare к соответствующему DC
- Если CF недоступен или IP-адрес не является адресом Telegram, то bypass на прямое TCP-соединение
- Git clone.
- cd ./TG-WS-proxy
- docker build -t tg-cf-proxy:1.4 .
- Внутри лежат два docker compose файла: docker-compose-wg - использовать WireGuard-client для выхода в сеть, docker-compose-proxy - выход через обычный docker-bridge. Отредактируйте нужный Docker compose файл, указав свой домен или используйте установленный по умолчанию ( --cf-domain virkgj.com) Как настроить свой домен - https://github.com/DimaXA97/TG-CF-proxy/blob/main/docs/CfProxy.md
- Создайте в папке wg0.conf, который является частью Outbound основного контейнера для выхода в интернет, если используете docker-compose-wg.
- Использовать WG: docker compose -f docker-compose-wg.yml up -d
- Использовать Docker-bridge: docker compose -f docker-compose-proxy.yml up -d
CIDR Telegram media 91.105.192.0/23 91.108.56.0/22 95.161.64.0/20 149.154.160.0/20 149.154.164.0/22 149.154.172.0/22 185.76.151.0/24
CIDR Telegram calls 91.108.4.0/22 91.108.8.0/22 91.108.12.0/22 91.108.16.0/22 91.108.20.0/22
За конфигурацию "по умолчанию" будем принимать, что клиент перенаправляет в прокси (L7) или VPN (L3) весь свой трафик.
-
На сервере L3 (Для примера указан OpenVPN) нужно настроить роутинг, что бы все подсети TG были перенаправлены в Sing-Box.
-
На сервере L7 можно сразу разделить CIDR - Telegram calls идут в outbound зарубежного VPS, а Telegram media - [Outbound SOCKS5 -> Inbound SOCKS5 TG-CF]
-
Точка выхода в сеть TG-WS-proxy должна роутиться в отдельную таблицу маршрутизации, где [0.0.0.0/0 -> VPS, CIDR Cloudflare -> Zapret]
CDN Cloudflare - https://www.cloudflare.com/ips-v4/#
