Skip to content

Commit ac3714f

Browse files
authored
RU TLS: Add ECH
1 parent d8efd31 commit ac3714f

File tree

1 file changed

+25
-2
lines changed

1 file changed

+25
-2
lines changed

docs/ru/config/transport.md

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,9 @@ Reality — это самое безопасное на данный момен
119119
"fingerprint": "chrome",
120120
"pinnedPeerCertificateChainSha256": [""],
121121
"curvePreferences": [""],
122-
"masterKeyLog": ""
122+
"masterKeyLog": "",
123+
"echConfigList": "",
124+
"echServerKeys": ""
123125
}
124126
```
125127

@@ -276,7 +278,28 @@ x25519Kyber768Draft00
276278

277279
> `masterKeyLog` : string
278280
279-
Путь к файлу журнала (Pre)-Master-Secret, который можно использовать для расшифровки TLS-соединений, отправляемых Xray, с помощью Wireshark и других программ, пока не поддерживается для использования с utls.
281+
Файл журнала (Pre)-Master-Secret, путь к которому задаётся здесь, может быть использован в Wireshark и других программах для расшифровки TLS-соединений, устанавливаемых Xray.
282+
283+
> `echConfigList` : string
284+
285+
Только для клиента. Задаёт ECHConfig; если значение задано — клиент включает Encrypted Client Hello. Поддерживаются два формата.
286+
287+
Фиксированный ECHConfig, например `"AF7+DQBaAAAgACA51i3Ssu4wUMV4FNCc8iRX5J+YC4Bhigz9sacl2lCfSQAkAAEAAQABAAIAAQADAAIAAQACAAIAAgADAAMAAQADAAIAAwADAAtleGFtcGxlLmNvbQAA"`
288+
289+
Получение через DNS. Удобно при использовании CDN: по HTTPS-записи можно динамически получить ECHConfig; Xray будет соблюдать TTL, возвращённый сервером. Запрашивается SNI из конфигурации или доменное имя сервера (если SNI пуст и целью является домен).
290+
291+
Базовый вид строки: `"udp://1.1.1.1"` — запрос по UDP DNS к 1.1.1.1. `"https://1.1.1.1/dns-query"` — запрос по DoH (пример; замените на доступный сервер). В обоих случаях можно указать порт, например `udp://1.1.1.1:53`; если порт не указан, берутся значения по умолчанию 53/443.
292+
293+
Особый случай: можно задать домен, из чьей записи будет браться ECHConfig, например `"example.com+https://1.1.1.1/dns-query"`. Тогда Xray принудительно использует ECHConfig из DNS-записи example.com, что полезно, если нужно получить ECHConfig через DNS, но не хочется светить целевой домен в HTTPS-запросе или публиковать у него HTTPS-запись.
294+
295+
> `echServerKeys` : string
296+
297+
Только для сервера. Включает Encrypted Client Hello на стороне сервера.
298+
299+
Создайте ключи командой `xray tls ech --serverName example.com` где `example.com` — SNI, который будет открыт наружу (можно указать любой). Server Key содержит и ECHConfig; если клиентский Config потерян, его можно восстановить командой `xray tls ech -i "ваш server key"`.
300+
Полученный Config можно опубликовать в HTTPS-записи DNS (см. пример в [Google DNS](https://dns.google/query?name=encryptedsni.com&rr_type=HTTPS) или RFC 9460).
301+
302+
Учтите: сервер, настроенный на использование ECH, всё ещё принимает обычные не-ECH-соединения. Но клиент, настроенный на ECH, при неудачной ECH-рукопожатии сразу завершит соединение, не откатываясь к открытому SNI.
280303

281304
### RealityObject
282305

0 commit comments

Comments
 (0)