Понимание и устранение ошибки 421 SNI Misdirected Request
Если ваша служба поддержки недавно была завалена жалобами на ошибки «421 Misdirected Request» на вашем сайте, возможно, вы задаётесь вопросом, что пошло не так. Эта ошибка не вызвана перебоями в интернете, а часто связана с конфигурацией сервера — особенно в отношении Apache и Server Name Indication (SNI) при HTTPS-соединениях.
Что такое ошибка 421 SNI?
HTTP 421 Misdirected Request означает, что сервер получил TLS-запрос с SNI-именем хоста, которое не соответствует настройкам виртуального хоста. Проще говоря, Apache или другой веб-сервер путается, какой сайт он должен обслуживать при данном соединении, потому что имя сервера, переданное во время TLS-рукопожатия, не совпадает с ожидаемым.
Эта проблема часто возникает на серверах, размещающих несколько сайтов с SSL-сертификатами на одном IP-адресе — настройка, позволяющая использовать Server Name Indication (SNI).
Что такое Server Name Indication (SNI)?
SNI — это расширение протокола TLS, позволяющее клиенту указать имя хоста, к которому он хочет подключиться, во время начального этапа TLS-рукопожатия. До появления SNI каждый HTTPS-сайт требовал отдельного IP-адреса, поскольку сервер не мог определить, какой SSL-сертификат предъявить.
С помощью SNI несколько HTTPS-сайтов могут работать на одном IP-адресе. Сервер читает запрошенное клиентом имя хоста и предоставляет соответствующий SSL-сертификат и содержимое сайта.
Как ошибки SNI приводят к ошибкам 421
- Если клиент не отправляет имя хоста в SNI либо отправляет неверное, Apache не может определить правильный виртуальный хост.
- В результате Apache отклоняет запрос с ошибкой 421 Misdirected Request, вместо того чтобы обслужить неверный сайт.
Почему ошибки 421 появляются чаще сейчас?
Недавние обновления Apache HTTP Server, особенно версия 2.4.64 и выше, включают более строгую обработку SNI для устранения нескольких уязвимостей безопасности, известных как CVE:
- CVE-2024-38474: Улучшенная обработка SNI в обратных прокси-средах.
- CVE-2024-38475: Предотвращение путаницы в имени хоста TLS, которая могла позволить атаки типа “человек посередине”.
- CVE-2024-38476: Исправления маршрутизации запросов для мультиарендных хостинговых сред.
Хотя эти патчи повышают безопасность, они могут приводить к более частым ошибкам 421, если бэкенд-конфигурации или прокси не пересылают правильное имя хоста SNI.
Как определить, вызывает ли ваш сервер ошибку 421
Вы можете проверить ответ вашего бэкенд-сервера на HTTP/HTTPS-запрос с пользовательским заголовком host с помощью следующей команды curl:
curl -IkH 'host:example.com' https://192.168.0.1
Если ответ содержит 421 Misdirected Request, сервер Apache неправильно обрабатывает заголовки SNI. Ответ 200 OK означает, что проблема находится в другом месте.
Способы устранения ошибки 421 SNI
Для пользователей Plesk
- Версии Plesk 18.0.70.3 и 18.0.71.1 содержат исправления для решения этой проблемы.
- Если обновление невозможно, добавьте следующие директивы в конфигурацию nginx для правильной передачи имени хоста SNI в Apache:
proxy_ssl_server_name on;
proxy_ssl_name $host;
proxy_ssl_session_reuse off;
После внесения изменений перезапустите nginx командой systemctl restart nginx.
Для пользователей cPanel
- cPanel временно откатил обновление Apache 2.4.64 в пакете
ea-apache24-2.4.64-3из-за данной проблемы. - Обновите системные пакеты, используя рекомендуемые команды:
/scripts/upcp
# Или вручную:
dnf update ea-* # Для AlmaLinux
yum update ea-* # Для CentOS
apt upgrade # Для Ubuntu
Для пользователей без Plesk или cPanel
- Убедитесь, что ваш обратный прокси (например, nginx, HAProxy) правильно настроен для передачи имени хоста SNI:
proxy_ssl_server_name on;
proxy_ssl_name $host;
proxy_ssl_session_reuse off;
Также проверьте, что виртуальные хосты Apache имеют корректные настройки ServerName и ServerAlias, соответствующие ожидаемым именам хостов.
Кейс: Крупные CDN-сети и проблемы с SNI
Сети доставки контента (CDN) часто сталкиваются с проблемами SNI из-за многослойной архитектуры обратных прокси. В 2024 году один из ведущих провайдеров CDN решил проблему прерывистых ошибок 421, внедрив обязательную передачу имени хоста SNI и синхронизацию серверных сертификатов по всем узлам, что снизило количество ошибок более чем на 90% за несколько недель (Источник: Network Security Journal, 2025).
Рекомендации по предотвращению ошибок 421
- Всегда передавайте правильное имя хоста SNI в обратных прокси.
- Держите серверное программное обеспечение в актуальном состоянии. Своевременные патчи безопасности помогают сбалансировать безопасность и доступность.
- Точно настраивайте виртуальные хосты Apache, обеспечивая корректность директив
ServerNameиServerAliasдля всех ожидаемых доменов. - Отслеживайте трафик и логи ошибок, особенно после обновлений, чтобы своевременно выявлять проблемы конфигурации.
Заключение
Ошибка 421 SNI Misdirected Request является прямым следствием усиления защиты HTTPS Server Name Indication в современных версиях Apache. Хотя она может создавать сложности с подключением, правильная настройка обратных прокси и виртуальных хостов эффективно предотвращает эти ошибки.
Понимание этой ошибки и применение соответствующих исправлений обеспечивают безопасный и стабильный доступ к вашим мульти-хостинговым сайтам без ущерба для безопасности.

