Trojan
имитация HTTPS · GitHub trojan-gfw · 2017
⚠️ Массовые отвалы VLESS с fingerprint: chrome — июнь 2026.
Проблема касается только клиентов с uTLS-fingerprint = chrome. Firefox, Edge, Safari, Random — работают нормально. Хронология:
Что делает ТСПУ (по данным ресёрчей hyperion_cs, XTLS issue #6293):
Простой фикс — сменить uTLS-fingerprint в конфиге:
Другие меры, если смена fp не помогла (мобильные региональные случаи):
Проблема касается только клиентов с uTLS-fingerprint = chrome. Firefox, Edge, Safari, Random — работают нормально. Хронология:
- Июль 2025 — первые жалобы на Chrome-fp в v2rayNG (Xray issue #4852)
- 17 февраля 2026 — первая массовая волна на проводных операторах (Dom.ru, Skynet, Ростелеком). Паттерн: первые ~16 KB проходят, дальше заморозка. SSH и обычный трафик — живые (Habr 1000694)
- Март 2026 — волна расширилась, часть пользователей полностью потеряли VLESS
- 25 мая 2026 — DPI-блокировка VLESS в Сибири и Москве (Techora)
- Начало июня 2026 — правило пришло и на мобильных провайдеров (Билайн/МТС/Мегафон). Именно тогда почти у всех отлетел Chrome-fp (Habr 1047442, anti-malware.ru 08.06.2026)
Что делает ТСПУ (по данным ресёрчей hyperion_cs, XTLS issue #6293):
- Смотрит на клиентский JA4/JA3-отпечаток TLS ClientHello
- Массовое правило нацелено на устаревший Chrome-fp из uTLS (то же что бьёт по MTProto-прокси Телеги)
- Дополнительно оценивает AS/подсеть сервера + поведение трафика первых 15-20 пакетов
- Если fp «chrome» + подозрительная подсеть + поведенческий паттерн — заморозка
Простой фикс — сменить uTLS-fingerprint в конфиге:
"realitySettings": {
...
"fingerprint": "firefox" // было "chrome" — заменить
}
Подходят: firefox, edge, random, randomized, safari, ios. Про эту массовую блокировку никак не касаются Firefox-fp (лучший вариант для 3x-ui/v2rayN на данный момент).
Другие меры, если смена fp не помогла (мобильные региональные случаи):
Что это
Trojan — прокси-протокол, задача которого одна: выглядеть неотличимо от обычного HTTPS. Разработан анонимным китайским разработчиком в 2017 году под ником trojan-gfw. Идея: если протокол выглядит как HTTPS, то и заблокировать его можно только заблокировав весь HTTPS.
Как работает
- На сервере Trojan слушает 443/tcp с реальным TLS-сертификатом (Let's Encrypt на реальном домене)
- Клиент подключается, делает нормальный TLS-handshake
- После TLS шлёт первый байт — SHA-224 хэш пароля
- Если пароль правильный — начинается прокси
- Если пароль неправильный или это скраипт-пробер — Trojan прозрачно проксирует запрос на реальный сайт (обычно nginx на 80 порту)
Итог: активный пробер видит обычный сайт. Даже DPI не различает Trojan от настоящего HTTPS.
Конфиг сервера
{
"run_type": "server",
"local_addr": "0.0.0.0",
"local_port": 443,
"remote_addr": "127.0.0.1",
"remote_port": 80, // fallback на nginx
"password": ["your_password"],
"ssl": {
"cert": "/etc/letsencrypt/live/example.com/fullchain.pem",
"key": "/etc/letsencrypt/live/example.com/privkey.pem"
}
}
Требования
- Настоящий домен с валидным TLS-сертификатом (Let's Encrypt)
- Реальный сайт-заглушка на fallback-порту (nginx с чем-то смотрибельным)
- Прямой IPv4 (для Let's Encrypt)
Trojan-Go
Форк на Go с дополнениями:
- Поддержка WebSocket, Mux, Shadowsocks-обфускации
- Плагины (transport plugins)
- Лучший CDN-friendly режим
В РФ
Trojan работает — так же как работает HTTPS. ТСПУ не могут различить Trojan-туннель от обычного посещения сайта. Основные риски:
- Заезженные VPN-домены попадают в списки IP по жалобам
- Behavioral: если сервер отдаёт «слишком много» трафика на одну сессию — может подсветиться
- Активные проберы (те кто ходит на подозрительные IP и стучится с фейковыми хэндшейками) — от них защищает fallback на реальный сайт
Trojan vs VLESS
Trojan требует настоящий домен и сертификат. Reality не требует — он крадёт сертификат чужого популярного сайта (google.com, apple.com). Reality сейчас более гибкий, но Trojan — проверенный и стабильный.