Skip to content
EN

ERR_ECH_REQUIRED

Коротко:

ERR_ECH_REQUIRED — редкая ошибка (Chrome 123+): server сигнализирует, что требует ECH (Encrypted Client Hello, RFC 9460) для connection, но client либо не поддерживает либо не получил ECHConfig из DNS HTTPS RR. ECH encrypts SNI + ALPN в TLS 1.3 — приватность browsing history у corporate proxies.

Ниже: причины, исправление, FAQ.

Проверить SSL своего сайта →

Причины ошибки

  • Server serves HTTPS resource record с ECHConfig, но client skipped it
  • DNSSEC validation failed для HTTPS RR (intermediate resolver stripped)
  • ECHConfig expired (rotated server public key)
  • Client on old Chrome version (<115)
  • Enterprise proxy strips HTTPS DNS records

Пошаговое исправление

  1. Update Chrome ≥ 115
  2. DNS provider support HTTPS records: Cloudflare ✅, Route 53 ✅, most lol 🟡
  3. Enable DNSSEC на domain
  4. Server-side: chrome://flags/#encrypted-client-hello toggle
  5. Enterno SSL checks HTTPS record presence

Проверить SSL-сертификат →

Смежные SSL-ошибки

Что такое ERR_ECH_REQUIRED?

ERR_ECH_REQUIRED — это ошибка, возникающая в браузерах, когда сервер требует зашифрованный клиентский привет (Encrypted Client Hello, ECH), а клиент (например, браузер) не поддерживает данную функцию или не настроен на ее использование. ECH является частью протокола TLS 1.3 и предназначен для повышения конфиденциальности данных, передаваемых между клиентом и сервером. Чтобы исправить эту ошибку, необходимо убедиться, что клиент поддерживает ECH и правильно настроен для его использования.

Как настроить поддержку ECH в браузере?

Чтобы устранить ошибку ERR_ECH_REQUIRED, необходимо убедиться, что ваш браузер поддерживает ECH и настроен для его использования. В большинстве современных браузеров, таких как Chrome и Firefox, поддержка ECH включена по умолчанию, но ее можно проверить и изменить в настройках.

Проверка и активация ECH в Google Chrome

  1. Откройте браузер Google Chrome.
  2. Введите в адресной строке chrome://flags/#enable-ech и нажмите Enter.
  3. Убедитесь, что параметр Enable Encrypted Client Hello установлен на Enabled.
  4. Перезапустите браузер, чтобы изменения вступили в силу.

После этих действий ваш браузер должен поддерживать ECH, и ошибка ERR_ECH_REQUIRED должна исчезнуть при подключении к соответствующему серверу.

Пример конфигурации сервера с поддержкой ECH

Чтобы сервер корректно обрабатывал зашифрованные клиентские приветствия, необходимо настроить его для поддержки ECH. Например, если вы используете Nginx, вам нужно убедиться, что у вас установлена последняя версия OpenSSL, поддерживающая ECH, и настроить сервер соответствующим образом.

Шаги по настройке Nginx для поддержки ECH

  1. Убедитесь, что у вас установлена последняя версия OpenSSL. Вы можете проверить это с помощью команды:
openssl version
  1. Добавьте необходимые параметры в конфигурацию вашего сервера Nginx:
server {
    listen 443 ssl;
    ssl_protocols TLSv1.3;
    ssl_ecdh_curve X25519:P-256;
    ssl_prefer_server_ciphers off;
    ssl_early_data on;
    add_header Alt-Svc "h3-23=\"w3c.org\"";
    add_header Alt-Svc-Params "ech=\"\"";
}
  1. Перезапустите Nginx для применения изменений:
sudo systemctl restart nginx

Теперь ваш сервер должен корректно обрабатывать зашифрованные клиентские приветствия, и пользователи не должны сталкиваться с ошибкой ERR_ECH_REQUIRED.

ERR_ECH_REQUIRED: Краткий ответ

Ошибка ERR_ECH_REQUIRED возникает, когда браузер не может установить соединение с сервером, поддерживающим Encrypted Client Hello (ECH). Это происходит из-за отсутствия поддержки ECH в клиенте или сервере, что приводит к невозможности провести шифрование данных при установлении TLS-соединения.

Понимание механизма ECH и его важность

Encrypted Client Hello (ECH) — это расширение протокола TLS 1.3, позволяющее шифровать часть информации, отправляемой клиентом при установлении соединения. Это критически важно для обеспечения конфиденциальности, поскольку позволяет скрыть идентификаторы серверов и переменные, которые могут быть использованы для анализа трафика.

Без поддержки ECH, данные, такие как имя хоста или параметры сессии, могут быть доступны третьим лицам, что делает соединение уязвимым для атак. Поэтому, если сервер поддерживает ECH, а клиент — нет, возникает ошибка ERR_ECH_REQUIRED.

Для корректной работы ECH необходимо, чтобы как сервер, так и клиент поддерживали это расширение. На данный момент поддержка ECH реализована в некоторых версиях популярных браузеров, таких как Google Chrome и Mozilla Firefox, а также в некоторых веб-серверах, таких как Nginx и Apache.

Важным аспектом является то, что для активации ECH на сервере требуется соответствующая конфигурация. Например, для Nginx необходимо использовать модуль, который поддерживает данное расширение, и настроить его в конфигурационном файле. В противном случае, пользователи, использующие браузеры с поддержкой ECH, могут столкнуться с ошибкой ERR_ECH_REQUIRED.

Настройка поддержки ECH на сервере

Для настройки поддержки ECH на сервере, вам потребуется убедиться, что ваш веб-сервер поддерживает это расширение. Ниже приведены шаги для настройки ECH на сервере Nginx.

  1. Убедитесь, что у вас установлена последняя версия Nginx: Для начала проверьте, что ваша версия Nginx поддерживает ECH. Это можно сделать с помощью команды:
nginx -v

Если версия устарела, обновите Nginx до последней стабильной версии.

  1. Включите поддержку ECH: Вам потребуется модуль, который поддерживает ECH. В случае с Nginx это может быть сторонний модуль или патч. Убедитесь, что модуль активирован в конфигурационном файле.
http { 
# Другие параметры
ssl_ech on;
}
  1. Настройте сертификаты: Для работы ECH необходимы соответствующие сертификаты. Убедитесь, что ваши сертификаты соответствуют требованиям для использования ECH.
server { 
listen 443 ssl;
ssl_certificate /path/to/your/certificate.crt;
ssl_certificate_key /path/to/your/private.key;
}
  1. Перезапустите сервер: После внесения всех изменений, перезапустите сервер для применения новых настроек.
sudo systemctl restart nginx

Теперь ваш сервер должен поддерживать ECH, и пользователи с браузерами, которые также поддерживают ECH, смогут устанавливать соединения без ошибки ERR_ECH_REQUIRED.

СертификатСрок, издатель, домены (SAN)
ЦепочкаПроверка промежуточных и корневых CA
TLS-протоколВерсия TLS и набор шифров
УязвимостиHeartbleed, POODLE, слабые шифры

Почему нам доверяют

TLS 1.3
поддержка
Полная
цепочка CA
<2с
результат
30/14/7
дней до истечения

Как это работает

1

Введите домен

2

Проверка цепочки TLS

3

Дата истечения и уязвимости

Что проверяет SSL-тест?

SSL/TLS — протокол шифрования, который защищает данные между браузером и сервером. Наш инструмент анализирует сертификат, цепочку доверия, версию TLS и известныеуязвимости.

Детали сертификата

Издатель, срок действия, алгоритм подписи, покрываемые домены (SAN) и тип валидации (DV/OV/EV).

Цепочка доверия

Проверка полной цепочки: от конечного сертификата через промежуточные до корневого CA.

Анализ TLS

Версия протокола (TLS 1.2/1.3), набор шифров, поддержка Perfect Forward Secrecy (PFS).

Оповещения об истечении

Создайте монитор — получайте уведомления в Telegram и email за 30/14/7 дней до истечения.

DV vs OV vs EV сертификаты

DV (Domain Validation)
  • Подтверждение только владения доменом
  • Выдаётся за минуты автоматически
  • Бесплатно через Let's Encrypt
  • Подходит для большинства сайтов
  • Самый распространённый тип
OV / EV
  • Проверка организации (OV) или расширенная проверка (EV)
  • Выдаётся за 1-5 рабочих дней
  • Стоимость от $50 до $500/год
  • Для финансов, e-commerce, госсайтов
  • Повышает доверие пользователей

Кому это нужно

DevOps

мониторинг SSL-сертификатов

Безопасность

аудит TLS-конфигурации

SEO

HTTPS как фактор ранжирования

E-commerce

доверие покупателей

Частые ошибки

Истёкший сертификатБраузеры блокируют сайт с истёкшим SSL. Настройте автопродление или мониторинг.
Неполная цепочка сертификатовБез промежуточного CA некоторые браузеры и боты не смогут верифицировать сертификат.
Mixed content на HTTPS-сайтеHTTP-ресурсы на HTTPS-странице — замок в браузере пропадает, снижается доверие.
Использование TLS 1.0/1.1Устаревшие версии TLS содержат известные уязвимости. Используйте TLS 1.2+ или 1.3.
Несовпадение домена в сертификатеСертификат должен покрывать все домены сайта, включая www и поддомены.

Лучшие практики

Настройте автопродлениеLet's Encrypt + certbot с cron — сертификат обновляется автоматически каждые 60-90 дней.
Включите HSTSЗаголовок Strict-Transport-Security заставляет браузер всегда использовать HTTPS.
Используйте TLS 1.3TLS 1.3 быстрее (1-RTT handshake) и безопаснее — убраны устаревшие шифры.
Мониторьте срок действияСоздайте монитор на Enterno.io — получайте уведомления задолго до истечения.
Проверяйте цепочку после обновленияПосле обновления сертификата убедитесь, что промежуточные сертификаты установлены.

Получите больше с бесплатным аккаунтом

Мониторинг SSL-сертификатов, история проверок и уведомления за 30 дней до истечения.

Зарегистрироваться (FREE)

Больше по теме

Источники

Часто задаваемые вопросы

ECH adoption 2026?

Cloudflare ECH enabled на millions sites (default если HTTPS RR present). Chrome 115+ supports. Firefox 118+. Safari 17+.

Зачем ECH?

Traditional TLS leaks SNI (domain) к middleboxes. ECH hides SNI — прайваси для https://adult-site или https://politicsafe.

Disabled by gov?

Some countries (Russia, China) block или filter ECH traffic. Если domain blocked — ECH помогает только частично.

How to test ECH?

browsers.cloudflare.com/ech — online test. <code>curl --ech</code> в future.

Запустить инструмент, который описан в этой статье

Бесплатный тариф — 10 мониторов, проверки каждые 5 мин, без карты. Платные тарифы — интервал от 1 минуты и проверки из нескольких регионов.