Как отключить TLS-расширение ECH для решения проблем с Cloudflare в РФ |
[исправить] |
Роскомнадзор начал блокировать в РФ соединения к сайтам, использующим
TLS-расширение ECH (Encrypted Client Hello). Блокировка привела к массовым
проблемам с сайтами, работающими через сеть доставки контента Cloudflare,
которую используют примерно 19% всех сайтов в интернете (по другим данным
16% (31 млн) активных сайтов или 23.83% из миллиона самых популярных сайтов).
О масштабе сбоев можно судить хотя бы по тому, что из-за блокировки ECH была
нарушена работа сайта самого Роскомнадзора, на котором для загрузки шрифтов
использовался сервис webfontfree.com, работающий через Cloudflare (первая
попытка открытия rkn.gov.ru приводила к минутному зависанию до истечения таймаута).
ECH продолжает развитие TLS-расширений SNI и ESNI (Encrypted Server Name
Indication) и предназначен для шифрования информации о параметрах TLS-сеансов,
таких как запрошенное доменное имя. Если без ECH на стороне интернет-провайдера
можно выборочно фильтровать HTTPS-трафик и анализировать какие сайты открывает
пользователь, то ECH позволяет добиться полной конфиденциальности при
применении HTTPS при обращении к сайтам, использующим сети доставки контента с
поддержкой ECH. После включения поддержки ECH в Cloudflare Роскомнадзор потерял
возможность блокировать сайты, использующие данную сеть доставки контента, и
поэтому просто начал блокировать HTTPS-запросы с ECH (судя по всему блокировка
ECH пока ограничивается отдельными подсетями Cloudflare).
На стороне пользователя в Firefox доступ к сайтам, работающим через Cloudflare,
можно решить двумя путями:
* отключить настройки network.dns.echconfig.enabled и
network.dns.http3_echconfig.enabled на странице about:config
* отключить использование протокола TLS 1.3 выставив в about:config параметр
security.tls.version.max в значение "3". При этом может быть нарушена работа с
серверами, поддерживающими только протокол TLS 1.3 и отключившими поддержку TLS 1.2.
В Chrome раньше ECH можно было отключить через параметр
chrome://flags#encrypted-client-hello, но с февраля этого года он удалён и ECH
всегда включён по умолчанию.
Владельцы сайтов, использующих Cloudflare, могут отключить ECH в личном
кабинете dash.cloudflare.com в секции "SSL > Edge Certificates > Encrypted
ClientHello (ECH)".
Если тарифный план не предусматривает возможность изменения данной настройки
через web-интерфейс, для отключения ECH можно использовать API:
curl -X PATCH "https://api.cloudflare.com/client/v4/zones/ID_ZONE/settings/ech" -H "X-Auth-Key: YOUR_GLOBAL_API_KEY" -H "X-Auth-Email: YOUR_EMAIL" -H "Content-Type: application/json" --data '{"id":"ech","value":"off"}'
|
|
|
07.11.2024
|
Раздел: Корень / Пользователю / Работа с Web и Ftp |