Как отключить ECH в протоколе TLS 1.3 Cloudflare
Роскомнадзор заблокировал Encrypted Client Hello (ECH) в протоколе TLS1.3, что вызвало недоступность сайтов, а точнее доменов, которые подключены к Cloudflare.
Если подключили сайт (домен) к Cloudflare, то по умолчанию протокол безопасности TLS 1.3 будет включен с активной функцией ECH (Encrypted Client Hello). РКН именно делает сайт недоступным для пользователей из России, если будет присутствовать в DNS запись ECH.
Конечно, многие веб-мастера в Cloudflare отключают полностью протокол TLS 1.3, но это неверное решение для безопасности, так как можно отключить сам ECH.
В данном руководстве о том, как отключить Encrypted Client Hello (ECH) в протоколе TLS 1.3 Cloudflare для тарифа Pro, через панель управления CF и через командную строку Windows.
Отключение ECH в Cloudflare для Pro тарифа
ECH в Cloudflare можно отключить ползунком, если имеется платный тариф Pro.
- Перейдите в "SSL/TLS" > "Корневые сертификаты".
- Отключите Encrypted Client Hello.
Отключить TLS 1.3 с ECH в Cloudflare и включить TLS 1.2
Самый быстрый способ отключить ECH в Cloudflare тарифе Freee – это отключить сам протокол TLS 1.3 и включить минимальный протокол TLS 1.2. Если вы за безопасность, то рекомендую отключить ECH в TLS 1.3 через командную строку в Windows ниже способом.
- Перейдите в "SSL/TLS" > "Корневые сертификаты".
- Отключите TLS 1.3 и выставьте минимальную версию TLS 1.2.
Отключение Encrypted Client Hello (ECH) в Cloudflare через CMD в Windows
Шаг 1. Чтобы отключить ECH, протокол TLS1.3 в Cloudflare должен быть включенным. Перейдите в "SSL/TLS" > "Корневые сертификаты" и включите TLS 1.3.
Шаг 2. Теперь в браузере вставьте следующий URl, чтобы проверить, включен ли ECH или нет. Может потребоваться очистить кэш в CF. Если будет строчка ech=, то он включен и его нужно отключить.
https://dns.google/resolve?name=домен_сайта&type=HTTPS
Шаг 3. Теперь нужен Global API Key из личного кабинета CF. Скопируйте и вставьте в текстовый документ для дальнейшего его использования в команде.
Шаг 4. Далее нужен API Zone ID домена, который можно найти в управление домен на главной странице справа снизу.
Шаг 5. Нужен еще Email аккаунта к которому привязан домен/сайт.
Шаг 6. Запустите в Windows командную строку от имени администратора и введите команду, заменяя Global API Key, Zone ID и Emal на свои:
curl -X PATCH "https://api.cloudflare.com/client/v4/zones/Zone ID/settings/ech" -H "X-Auth-Email: Emal" -H "X-Auth-Key: Global API Key" -H "Content-Type: application/json" --data "{\"id\":\"ech\",\"value\":\"off\"}"
Если используете Linux, то команда будет следующего вида:
curl -X PATCH "https://api.cloudflare.com/client/v4/zones/Zone ID/settings/ech" \ -H "X-Auth-Email: Emal" \ -H "X-Auth-Key: Global API Key" \ -H "Content-Type: application/json" \ --data '{"id":"ech","value":"off"}'
Шаг 7. Введите URL адрес из шага 2, если строчка ech= будет отсутствовать, значить ECH отключен в протоколе TLS 1.3. Может потребоваться очистить кэш CF.