Pluggable transports (PT)
Pluggable transports — стандартизированный интерфейс в Tor для подключения обёрток, которые маскируют трафик к Tor-мосту так, чтобы DPI не мог его определить.
Проблема: список публичных Tor-relay открыт. Любая цензура берёт этот список и блокирует. Даже bridges (непубличные мосты) детектятся, потому что сам «Tor-handshake» имеет узнаваемые сигнатуры — фиксированные размеры пакетов, тайминги, TLS-fingerprint. Задача PT — сделать этот трафик неотличимым от чего-то нейтрального.
Как это устроено
PT — отдельный процесс между Tor-клиентом и Tor-мостом. Клиент отправляет Tor-трафик в локальный PT-процесс, тот заворачивает его в целевую маскировку и передаёт на мост. Мост принимает, разворачивает, отдаёт «нормальному» Tor.
[tor-client] → [PT-client] → интернет (замаскировано) → [PT-server] → [tor-bridge]
Интерфейс единый (Pluggable Transport Specification), поэтому под одну и ту же архитектуру можно подключать любую маску.
Основные PT
- obfs4 (obfsproxy 4) — самый распространённый. Шифрует Tor-поток так, чтобы он выглядел как случайные байты, без сигнатур. Требует получения ключа моста заранее.
- meek — domain fronting через большие CDN (Cloudflare, Fastly, AWS, Azure, GCP). Трафик выглядит как HTTPS-запрос к легитимному хостингу. Почти умерло — все крупные хостеры запретили domain fronting.
- snowflake — WebRTC-транспорт. Клиент подключается к случайному волонтёру-браузеру через WebRTC (как видеозвонок), тот проксирует в Tor. Волонтёров тысячи, IP-адреса меняются постоянно.
- webtunnel — новый (2024+). Заворачивает Tor в обычный HTTPS-трафик на «настоящий» сайт с сертификатом. Похоже на VLESS-Reality по идее.
- obfs2, obfs3, ScrambleSuit, FTE, format-transforming — устаревшие/deprecated.
Как включить
В Tor Browser: Settings → Connection → Add a bridge. Три варианта:
- Built-in — obfs4/snowflake/meek с встроенными мостами. Работает во многих странах, но известные мосты блокируются первыми.
- Request a bridge — получить свежий obfs4-мост от Tor Project (через bridges.torproject.org, email, Telegram-бот).
- Provide a bridge — вручную вбить bridge line.
Формат bridge line
obfs4 192.0.2.1:443 CERT=xyz IAT-MODE=0
snowflake IP:PORT FINGERPRINT
meek_lite IP:PORT url=https://... front=cdn.example.com
Кто ещё использует PT
Кроме Tor:
- Lantern — форк идей PT для собственной сети.
- Psiphon — с собственными транспортами похожей архитектуры.
- I2P — свой набор транспортов (SSU, NTCP).
- Идея PT повлияла на Xray (transports xhttp/httpupgrade/grpc — тоже маски) и olcRTC / XMC (finalmask).