ВяткинАртём fe9f524a63 fix
2026-03-27 16:46:23 +03:00
2026-03-27 16:45:55 +03:00
2026-03-27 16:45:55 +03:00
2026-03-27 16:45:55 +03:00
fix
2026-03-27 16:46:23 +03:00
2026-03-27 16:45:55 +03:00
2026-03-27 16:00:43 +03:00
2026-03-04 17:10:26 +03:00
2026-03-27 16:45:55 +03:00
2026-03-27 16:45:55 +03:00
2026-03-27 16:45:55 +03:00

Caution

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

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

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

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

TG WS Proxy

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

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

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

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

Установка из исходников (консольный прокси)

Для запуска только SOCKS5/WebSocket proxy без графического интерфейса достаточно базовой установки:

pip install -e .
tg-ws-proxy

Консольный режим из исходников

tg-ws-proxy [--port PORT] [--host HOST] [--dc-ip DC:IP ...] [-v]

Аргументы:

Аргумент По умолчанию Описание
--port 1080 Порт SOCKS5-прокси
--host 127.0.0.1 Хост для bind
--bind-mode local Режим работы: local (127.0.0.1), network (0.0.0.0), internet (0.0.0.0)
--dc-ip 2:149.154.167.220 4:149.154.167.220 IP адреса для DC в формате "DC:IP"
--log-level INFO Уровень логирования: DEBUG, INFO, WARNING, ERROR, CRITICAL
--quiet false Отключить логирование
--log-file None Путь к файлу логов
--log-max-mb 100 Максимальный размер файла логов в MB
--log-backups 3 Количество backup файлов логов
--buf-kb 256 Размер буфера сокета в KB
--pool-size 4 Размер пула WS соединений на DC
--host 127.0.0.1 Хост SOCKS5-прокси
--dc-ip 2:149.154.167.220, 4:149.154.167.220 Целевой IP для DC (можно указать несколько раз)
-v, --verbose выкл. Подробное логирование (DEBUG)

Примеры:

# Стандартный запуск
tg-ws-proxy

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

# С подробным логированием
tg-ws-proxy -v

Настройка Telegram Desktop

Вручную

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

Конфигурация через переменные окружения

Прокси поддерживает конфигурацию через переменные окружения, что удобно для Docker и CI/CD окружений.

Доступные переменные окружения

Переменная По умолчанию Описание
TG_WS_PROXY_HOST 0.0.0.0 Хост для bind
TG_WS_PROXY_PORT 1080 Порт SOCKS5-прокси
TG_WS_PROXY_LOGGER true Включить логирование (true/false)
TG_WS_PROXY_LOG_LEVEL INFO Уровень логирования
TG_WS_PROXY_LOG_FILE (пусто) Путь к файлу логов
TG_WS_PROXY_LOG_MAX_MB 100 Макс. размер файла логов в MB
TG_WS_PROXY_LOG_BACKUPS 3 Количество backup файлов
TG_WS_PROXY_BIND_MODE network Режим работы: local, network, internet
TG_WS_PROXY_DC_IPS 2:149.154.167.220 4:149.154.167.220 IP адреса DC
TG_WS_PROXY_BUF_KB 256 Размер буфера сокета в KB
TG_WS_PROXY_POOL_SIZE 4 Размер пула WS соединений

Режимы работы (BIND_MODE)

  • local - только локальный доступ (127.0.0.1)
  • network - доступ в локальной сети (0.0.0.0)
  • internet - доступ из интернета (0.0.0.0) - используйте с firewall

Пример использования

# Установка переменных окружения
export TG_WS_PROXY_PORT=9050
export TG_WS_PROXY_BIND_MODE=local
export TG_WS_PROXY_LOGGER=false

# Запуск с переменными окружения
tg-ws-proxy

# Или с .env файлом
cp .env.example .env
# редактируем .env
tg-ws-proxy

Docker

Запуск через Docker

# Сборка образа
docker build -t tg-ws-proxy .

# Запуск с настройками по умолчанию
docker run -d --name tg-proxy -p 1080:1080 tg-ws-proxy

# Запуск с кастомными настройками
docker run -d \
  --name tg-proxy \
  -p 9050:9050 \
  -e TG_WS_PROXY_PORT=9050 \
  -e TG_WS_PROXY_BIND_MODE=network \
  -e TG_WS_PROXY_LOGGER=true \
  -e TG_WS_PROXY_LOG_LEVEL=DEBUG \
  tg-ws-proxy

Docker Compose

version: '3.8'
services:
  tg-ws-proxy:
    build: .
    ports:
      - "1080:1080"
    environment:
      - TG_WS_PROXY_PORT=1080
      - TG_WS_PROXY_BIND_MODE=network
      - TG_WS_PROXY_LOGGER=true
      - TG_WS_PROXY_LOG_LEVEL=INFO
    restart: unless-stopped

Coolify / PaaS

При развертывании в Coolify или других PaaS платформах, просто установите переменные окружения в настройках приложения. Все переменные, начинающиеся с TG_WS_PROXY_, будут автоматически применены.

Конфигурация через аргументы командной строки

Прокси также поддерживает конфигурацию через аргументы командной строки (имеют приоритет над переменными окружения).

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

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

Минимально поддерживаемые версии ОС для текущих бинарных сборок:

  • Windows 10+ для TgWsProxy_windows.exe
  • Windows 7 (x64) для TgWsProxy_windows_7_64bit.exe
  • Windows 7 (x32) для TgWsProxy_windows_7_32bit.exe
  • Intel macOS 10.15+
  • Apple Silicon macOS 11.0+
  • Linux x86_64

Лицензия

MIT License

Description
No description provided
Readme 6.4 MiB
Languages
Python 95.2%
Dockerfile 4.8%