mirror of
https://github.com/XTLS/Xray-docs-next.git
synced 2026-10-10 16:28:12 +03:00
RU TLS: Add pinnedPeerCertSha256
This commit is contained in:
@@ -117,7 +117,7 @@ Reality — это самое безопасное на данный момен
|
||||
"disableSystemRoot": false,
|
||||
"enableSessionResumption": false,
|
||||
"fingerprint": "chrome",
|
||||
"pinnedPeerCertificateChainSha256": [""],
|
||||
"pinnedPeerCertSha256": "",
|
||||
"curvePreferences": [""],
|
||||
"masterKeyLog": "",
|
||||
"echConfigList": "",
|
||||
@@ -240,24 +240,19 @@ Reality — это самое безопасное на данный момен
|
||||
::: tip
|
||||
При использовании этой функции некоторые параметры TLS, влияющие на отпечаток TLS, будут переопределены библиотекой utls и не будут действовать, например, ALPN.
|
||||
Передаваемые параметры:
|
||||
`"serverName" "allowInsecure" "disableSystemRoot" "pinnedPeerCertificateChainSha256" "masterKeyLog"`
|
||||
`"serverName" "allowInsecure" "disableSystemRoot" "pinnedPeerCertSha256" "masterKeyLog"`
|
||||
:::
|
||||
|
||||
> `pinnedPeerCertificateChainSha256`: \[string\]
|
||||
> `pinnedPeerCertSha256`: string
|
||||
|
||||
Используется для указания хэша SHA256 цепочки сертификатов удаленного сервера с использованием стандартного формата кодировки. Соединение TLS может быть успешно установлено только в том случае, если хэш цепочки сертификатов сервера соответствует одному из значений, указанных в настройке.
|
||||
Используется для указания хеш-суммы SHA256 сертификата удаленного сервера; формат hex, регистр не учитывается. Например: `e8e2d387fdbffeb38e9c9065cf30a97ee23c0e3d32ee6f78ffae40966befccc9`. Эта кодировка совпадает с отпечатком сертификата SHA-256 в просмотрщике сертификатов Chrome, а также с форматом Certificate Fingerprints SHA-256 на crt.sh. Также для вычисления можно использовать команду `xray tls leafCertHash --cert <cert.pem>`. Можно использовать символ `-` для объединения нескольких хеш-значений; проверка считается пройденной при совпадении с любым из них.
|
||||
|
||||
Если соединение не удалось установить из-за этой конфигурации, будет отображен хэш сертификата удаленного сервера.
|
||||
Эта проверка выполняется только после успешного завершения стандартной проверки сертификата и делится на два случая:
|
||||
|
||||
**Примечание:** Проверка будет выполняться только после успешной проверки сертификата на действительность. Например, если используется самоподписанный сертификат и он указан здесь, то при неудачной проверке сертификата ядро сразу разорвет соединение и не будет выполнять эту проверку. В подобных случаях можно рассмотреть включение параметра `allowInsecure`, чтобы пропустить проверку подписи, что позволит системе работать корректно.
|
||||
- 1. Когда ядро обнаруживает, что совпадающий хеш принадлежит конечному (leaf) сертификату, проверка проходит сразу.
|
||||
- 2. Когда ядро обнаруживает, что совпадающее значение принадлежит сертификату CA (это может быть корневой или промежуточный сертификат), проверяется, действительно ли подпись на конечном сертификате авторизована этим CA.
|
||||
|
||||
::: danger
|
||||
Не рекомендуется использовать этот способ для получения хэша цепочки сертификатов, так как в этом случае не будет возможности проверить, является ли сертификат, предоставленный сервером в данный момент, подлинным, и, следовательно, не гарантируется, что полученный хэш сертификата является ожидаемым.
|
||||
:::
|
||||
|
||||
::: tip
|
||||
Если вам нужно получить хэш сертификата, запустите `xray tls certChainHash --cert <cert.pem>` из командной строки, где `<cert.pem>` следует заменить на фактический путь к файлу сертификата.
|
||||
:::
|
||||
Перед этой проверкой сначала выполняется стандартная проверка сертификата, поэтому для самоподписанных сертификатов можно рассмотреть возможность включения `allowInsecure` с настройкой хеша здесь, а для самоподписанных CA можно закрепить (pin) CA здесь и настроить `verifyPeerCertInNames` (сертификат CA, используемый в процессе его проверки, будет заменен сертификатом CA, найденным здесь).
|
||||
|
||||
> `certificates`: \[ [CertificateObject](#certificateobject) \]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user