Trojan VPN: протокол поверх TLS с паролем

Обновлено: Автор: Редакция сайта

Кратко

Trojan — протокол, который передаёт трафик внутри обычного TLS-соединения. Клиент подтверждает себя паролем: в начале соединения отправляется его хеш SHA224. Серверу нужны домен и действующий сертификат. Ключ выглядит как ссылка trojan://пароль@сервер:порт. В INCY его достаточно вставить кнопкой «Вставить».

Что такое Trojan

Trojan — протокол, который описан проектом Trojan-GFW и реализован в ядре Xray-core, на котором работает INCY. Идея простая: сначала устанавливается стандартное TLS-соединение, а внутри него клиент отправляет хеш пароля (hex(SHA224(password))) и запрос на подключение к нужному адресу, похожий по формату на SOCKS5. Если хеш верный, сервер пересылает трафик дальше.

Из этого следуют два свойства:

  • шифрование обеспечивает TLS — отдельного шифрования в протоколе нет;
  • аутентификация построена на пароле, а не на UUID, как в VLESS и VMess.

Что нужно серверу

Для Trojan серверу нужны домен и действующий сертификат: без них TLS не настроить. В этом главное отличие от Reality, которому собственный домен и сертификат не нужны. Пользователю это полезно знать только при выборе сервиса: если ключ выдал сервис, всё уже настроено, а на собственном сервере придётся подготовить домен.

В документации Xray сказано, что Trojan следует использовать с транспортной защитой TLS. Отключить её можно только для частных адресов и доверенных каналов.

Как выглядит ссылка trojan://

trojan://пароль@host:port?security=tls&sni=example.com&type=tcp#Название

По описанию форматов INCY, ссылка Trojan похожа на ссылку VLESS, но вместо UUID стоит пароль, а security по умолчанию равен tls. Параметры:

ПараметрЧто означает
парольСекрет для аутентификации, стоит перед @
host:portАдрес и порт сервера
sniИмя сервера для TLS, при отсутствии используется peer
typeТранспорт: tcp, ws, grpc и др.
fp, alpnПараметры TLS

После # идёт название сервера.

Как добавить Trojan в INCY

  1. Скопируйте ссылку trojan:// или адрес подписки, выданный сервисом.
  2. Откройте INCY и нажмите «Вставить» на главном экране либо «+ Добавить» во вкладке «Серверы».
  3. Выберите добавленный сервер и нажмите кнопку подключения.

Пошаговая инструкция — «Как добавить ключ в INCY». Если ссылка не добавляется, проверьте, что пароль в ней не изменён при копировании. О том, откуда берутся ключи, читайте на странице «Ключи».

Чем Trojan отличается от других протоколов

  • От VLESS его отличает пароль вместо UUID и обязательный TLS: у VLESS защиту можно выбирать между TLS и Reality.
  • От VMess — отсутствие собственного шифрования и независимость от точного времени на устройстве.
  • От Hysteria2 — TCP вместо UDP: Trojan обычно работает в тех сетях, где доступен обычный HTTPS-трафик.

Когда выбирать Trojan

Trojan удобен, когда у сервера уже есть домен с сертификатом, а клиенту нужна простая схема с паролем. Если важна работа в нестабильных мобильных сетях, обратите внимание на Hysteria2. Сравнение по транспорту и защите — в таблице на странице «Протоколы VPN».

Частые вопросы

Что такое Trojan VPN?

Trojan — протокол, где данные идут внутри TLS-соединения, а клиент подтверждает себя паролем. Шифрование обеспечивает TLS, как у сайтов с HTTPS. Это один из протоколов, которые INCY поддерживает через ядро Xray.

Нужен ли Trojan свой домен и сертификат?

На стороне сервера — да: Trojan работает поверх TLS, поэтому серверу нужен домен и действующий сертификат. Пользователю ничего настраивать не нужно: адрес и параметры TLS уже записаны в ссылке trojan://, которую выдал сервис.

Можно ли использовать Trojan без TLS?

Документация Xray допускает отключение TLS только для частных адресов, например в доверенной локальной сети. В публичной сети Trojan должен использоваться с TLS. Поэтому в ключах Trojan параметр security по умолчанию равен tls.

Как добавить Trojan в INCY?

Скопируйте ссылку trojan:// или адрес подписки, откройте INCY и нажмите «Вставить» на главном экране либо «+ Добавить» во вкладке «Серверы». Затем выберите сервер и нажмите кнопку подключения. Параметры приложение возьмёт из ссылки.