Skip to content

kstepanchuk/tg-ws-proxy-mac

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Caution

Реакция антивирусов

Windows Defender часто ошибочно помечает приложение как Wacatac.
Если вы не можете скачать из-за блокировки, то:

  1. Попробуйте скачать версию win7 (она ничем не отличается в плане функционала)
  2. Отключите антивирус на время скачивания, добавьте файл в исключения и включите обратно

Всегда проверяйте, что скачиваете из интернета, тем более из непроверенных источников. Всегда лучше смотреть на детекты широко известных антивирусов на VirusTotal

TG WS Proxy

Локальный SOCKS5-прокси для Telegram Desktop, который перенаправляет трафик через WebSocket-соединения к указанным серверам, помогая частично ускорить работу Telegram.

Ожидаемый результат аналогичен прокидыванию hosts для Web Telegram: ускорение загрузки и скачивания файлов, загрузки сообщений и части медиа.

image

Как это работает

Telegram Desktop → SOCKS5 (127.0.0.1:1080) → TG WS Proxy → WSS (kws*.web.telegram.org) → Telegram DC
  1. Приложение поднимает локальный SOCKS5-прокси на 127.0.0.1:1080
  2. Перехватывает подключения к IP-адресам Telegram
  3. Извлекает DC ID из MTProto obfuscation init-пакета
  4. Устанавливает WebSocket (TLS) соединение к соответствующему DC через домены kws{N}.web.telegram.org
  5. Если WS недоступен (302 redirect) — автоматически переключается на прямое TCP-соединение

🚀 Быстрый старт

Windows

Перейдите на страницу релизов и скачайте TgWsProxy.exe. Он собирается автоматически через Github Actions из открытого исходного кода.

При первом запуске откроется окно с инструкцией по подключению Telegram Desktop. Приложение сворачивается в системный трей.

Меню трея:

  • Открыть в Telegram — автоматически настроить прокси через tg://socks ссылку
  • Перезапустить прокси — перезапуск без выхода из приложения
  • Настройки... — GUI-редактор конфигурации
  • Открыть логи — открыть файл логов
  • Выход — остановить прокси и закрыть приложение

Установка из исходников

pip install -r requirements.txt

Windows (Tray-приложение)

python windows.py

Консольный режим

python proxy/tg_ws_proxy.py [--port PORT] [--dc-ip DC:IP ...] [-v]

Аргументы:

Аргумент По умолчанию Описание
--port 1080 Порт SOCKS5-прокси
--dc-ip 2:149.154.167.220, 4:149.154.167.220 Целевой IP для DC (можно указать несколько раз)
-v, --verbose выкл. Подробное логирование (DEBUG)

Примеры:

# Стандартный запуск
python proxy/tg_ws_proxy.py

# Другой порт и дополнительные DC
python proxy/tg_ws_proxy.py --port 9050 --dc-ip 1:149.154.175.205 --dc-ip 2:149.154.167.220

# С подробным логированием
python proxy/tg_ws_proxy.py -v

Настройка Telegram Desktop

Автоматически

ПКМ по иконке в трее → «Открыть в Telegram»

Вручную

  1. Telegram → НастройкиПродвинутые настройкиТип подключенияПрокси
  2. Добавить прокси:
    • Тип: SOCKS5
    • Сервер: 127.0.0.1
    • Порт: 1080
    • Логин/Пароль: оставить пустыми

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

Tray-приложение хранит данные в %APPDATA%/TgWsProxy:

{
  "port": 1080,
  "dc_ip": [
    "2:149.154.167.220",
    "4:149.154.167.220"
  ],
  "verbose": false
}

Автоматическая сборка

Проект содержит спецификацию PyInstaller (windows.spec) и GitHub Actions workflow (.github/workflows/build.yml) для автоматической сборки.

pip install pyinstaller
pyinstaller packaging/windows.spec

Лицензия

MIT License

About

Local SOCKS5 proxy server for partial bypassing of Telegram loading

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%