Отключение Encrypted Client Hello (ECH)

Отключение Encrypted Client Hello (ECH)

Зачем отключать ECH?

Роскомнадзор заблокировал технологию Encrypted Client Hello (ECH), что вызвало проблемы для пользователей Cloudflare в России. Более того, Cloudflare принудительно активировал эту технологию для всех пользователей, включая тех, кто находится на бесплатном тарифе.

В этом гайде мы разберем, как отключить ECH для вашего домена через Cloudflare API.

Для пользователей из России: Отключение ECH может быть необходимо для обеспечения доступности вашего сайта для российских пользователей из-за блокировки этой технологии Роскомнадзором.

Шаг 1: Проверка включения ECH

Прежде чем отключать ECH, проверьте, включен ли он для вашего домена. Это можно сделать с помощью запроса к Google Public DNS:

  1. Перейдите по следующей ссылке, заменив [ВАШ_ДОМЕН] на имя вашего домена:
https://dns.google/resolve?name=[ВАШ_ДОМЕН]&type=HTTPS
  1. Если в результатах видно, что ECH активен, переходите к следующему шагу.

Пример: Для домена example.com ссылка будет выглядеть так:

https://dns.google/resolve?name=example.com&type=HTTPS

Шаг 2: Получение данных для Cloudflare API

Для взаимодействия с API вам понадобятся два ключевых элемента:

Global API Key

  1. Перейдите на страницу профиля Cloudflare
  2. Найдите раздел с вашим Global API Key и скопируйте ключ
Важно: Global API Key дает полный доступ к вашему аккаунту. Никогда не делитесь им с третьими лицами и храните в безопасном месте!

Zone ID

  1. Зайдите в панель управления вашим доменом в Cloudflare
  2. Прокрутите страницу вниз в правой колонке
  3. Скопируйте значение Zone ID
Zone ID — это уникальный идентификатор вашего домена в системе Cloudflare.

Шаг 3: Отключение ECH через Cloudflare API

Способ 1: Использование команды curl

Для отключения ECH выполните следующую команду в терминале, заменив {ID_ZONE}, {ACCOUNT_EMAIL} и {GLOBAL_API_KEY} на ваши данные:

curl -X PATCH "https://api.cloudflare.com/client/v4/zones/{ID_ZONE}/settings/ech" \
     -H "X-Auth-Email: {ACCOUNT_EMAIL}" \
     -H "X-Auth-Key: {GLOBAL_API_KEY}" \
     -H "Content-Type: application/json" \
     --data '{"id":"ech","value":"off"}'

Пример:

curl -X PATCH "https://api.cloudflare.com/client/v4/zones/abc123def456/settings/ech" \
     -H "X-Auth-Email: [email protected]" \
     -H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \
     -H "Content-Type: application/json" \
     --data '{"id":"ech","value":"off"}'
При успешном выполнении вы получите JSON-ответ с подтверждением изменения настройки.

Способ 2: Использование Postman

Вы можете выполнить этот запрос через Postman, следуя инструкциям:

1. Настройка запроса

  • Метод: PATCH
  • URL:
https://api.cloudflare.com/client/v4/zones/{ID_ZONE}/settings/ech

2. Настройка Headers

В разделе Headers добавьте следующие поля:

Key Value
X-Auth-Email ваш email-адрес Cloudflare
X-Auth-Key ваш Global API Key
Content-Type application/json

3. Настройка Body

В разделе Body выберите raw и JSON, затем введите:

{
  "id": "ech",
  "value": "off"
}

4. Отправка запроса

Нажмите кнопку Send и дождитесь ответа от сервера.


Способ 3: В случае с платным тарифом

Если вы используете платный тариф Cloudflare, отключить ECH можно через интерфейс панели управления:

  1. Перейдите в раздел SSL/TLS
  2. Откройте вкладку Edge Certificates
  3. Найдите настройку Encrypted ClientHello (ECH)
  4. Установите значение Disabled
Обратите внимание: Эта опция доступна только для пользователей платных тарифов (Pro, Business, Enterprise).

Проверка результата

После отключения ECH рекомендуется проверить изменения:

  1. Подождите 5-10 минут для применения настроек
  2. Снова выполните проверку через Google Public DNS (Шаг 1)
  3. Проверьте доступность вашего сайта для пользователей из России
Готово! ECH теперь отключен для вашего домена, и сайт должен быть доступен для российских пользователей.

Возможные проблемы и решения

Ошибка аутентификации

Проблема: Получаете ошибку Authentication error или Invalid credentials

Решение:

  • Проверьте правильность email-адреса
  • Убедитесь, что скопировали Global API Key полностью
  • Проверьте, что не добавили лишние пробелы при копировании

Ошибка Zone ID

Проблема: Получаете ошибку Zone not found

Решение:

  • Убедитесь, что Zone ID скопирован правильно
  • Проверьте, что используете Zone ID именно того домена, который хотите изменить

ECH не отключается

Проблема: После выполнения команды ECH остается включенным

Решение:

  • Подождите 10-15 минут для применения изменений
  • Очистите DNS-кеш на вашем устройстве
  • Повторите запрос к API

Дополнительные ресурсы

Нужна помощь? Если у вас возникли сложности с отключением ECH, обратитесь в поддержку Cloudflare или на форумы сообщества.