В последнее время часть владельцев интернет-ресурсов и пользователей из России может сталкиваться с избирательной недоступностью сайтов, работающих по протоколу HTTPS на порту TCP/443. Чаще всего проблема проявляется при установлении соединения с использованием TLS 1.3.
Проблема носит избирательный характер: сайт может открываться у одних пользователей и быть недоступен у других. Это зависит от оператора связи, региона, маршрута передачи данных, используемого браузера и особенностей обработки TLS-соединения на промежуточных участках сети.
На текущий момент подтверждённых проблем на стороне нашей инфраструктуры не выявлено. Со стороны наших серверов и каналов связи не применяются ограничения по версиям TLS и не выполняется фильтрация HTTPS-трафика.
Если сайт недоступен только у части пользователей, а с других сетей открывается корректно, причина может находиться за пределами сервера — на стороне внешнего маршрута, магистрального провайдера, оператора связи или промежуточных устройств анализа и фильтрации трафика.
СОДЕРЖАНИЕ
Что происходит
Пользователь может видеть ошибку загрузки сайта, сброс соединения, бесконечное ожидание ответа или невозможность установить защищённое HTTPS-соединение. При этом тот же сайт может открываться с другого провайдера, из другой страны, через мобильную сеть или в другом браузере.
Такая ситуация обычно указывает не на полную недоступность сервера, а на проблему прохождения трафика на определённом участке сети.
Почему сайт может быть недоступен выборочно
При установлении HTTPS-соединения браузер и сервер согласуют параметры защищённого соединения. На этом этапе используется TLS-рукопожатие, включая набор поддерживаемых версий TLS, шифров и расширений.
В некоторых сетях промежуточные устройства могут некорректно обрабатывать отдельные варианты TLS ClientHello, особенно при использовании TLS 1.3. В результате часть соединений может обрываться или не доходить до целевого сервера, хотя сам сервер продолжает работать корректно и доступен из других сетей.
Мы продолжаем мониторинг ситуации, однако не можем гарантировать сроки полного устранения проблемы, если она возникает на стороне сторонних сетей, операторов связи или магистральных провайдеров.
Рекомендации для клиента
Если вы администрируете сайт и наблюдаете массовые жалобы на его недоступность у части пользователей, можно использовать один из временных вариантов ниже.
Вариант 1. Изменение конфигурации веб-сервера nginx
Если вы администрируете сервер и наблюдаете массовые жалобы на недоступность, временной мерой может быть отключение жёсткой привязки к TLS 1.3 и включение поддержки TLS 1.2. Это позволит части пользователей согласовать соединение на версии TLS, которая реже вызывает проблемы на промежуточных сетевых устройствах.
Пример временной конфигурации для nginx:
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # явное указание версий, включая TLS 1.2
Директива ssl_protocols задаёт список поддерживаемых версий TLS. Временное использование TLS 1.2 может помочь сохранить доступность сайта для части пользователей, у которых соединения с TLS 1.3 обрываются на внешнем маршруте.
Не рекомендуется включать устаревшие версии TLS 1.0 и TLS 1.1, так как они считаются небезопасными. Рекомендуем использовать TLS 1.2 как временную меру и после нормализации ситуации вернуть современную конфигурацию с TLS 1.2 и TLS 1.3.
Дополнительно: для HTTPS-сайтов рекомендуется использовать HTTP/2, если он поддерживается вашей конфигурацией веб-сервера. В период нестабильности не рекомендуется включать HTTP/3 / QUIC, если у вас нет уверенности, что он корректно работает для вашей аудитории.
Инструкция для ispmanager 6:
В списке сайтов выделите ваш домен и в верхнем меню нажмите кнопку Файлы конфигурации.

Найдите строку, начинающуюся listen X.X.X.X:443 ssl . Допишите в нее http2 .

Найдите строку, ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; и удалить из нее TLSv1.3.

Нажмите кнопку сохранить и закрыть.
Инструкция для FASTPANEL
Включение HTTP/2:
1. Перейдите в карточку сайта, откройте меню Настройки и выберите вкладку HTTPS.
2. Активируйте чекбокс ( галочку ) напротив пункта HTTP2.
3. Выключите чекбокс HTTP3.
4. Нажмите сохранить.

Отключение TLS 1.3:
Вернитесь в карточку сайта и нажмите кнопку Ручная настройка ( или Конфигурационные файлы)

Выберите вкладку Frontend
В секции server {
Добавьте строки:
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;

Нажмите кнопку Сохранить. Панель автоматически применит настройки.
Вариант 2. Рекомендовать пользователям временно использовать Mozilla Firefox
Значительная часть сбоев может быть связана не только с версией TLS, но и с так называемым TLS-отпечатком — особенностями ClientHello, которые формирует браузер при установлении защищённого соединения.
Браузер Mozilla Firefox формирует другой набор TLS-расширений и порядок шифров в клиентском приветствии. В некоторых случаях это позволяет обойти проблему прохождения соединения через промежуточные сетевые устройства без изменения серверной инфраструктуры.
Поэтому, если сайт не открывается у части пользователей, можно временно рекомендовать им попробовать открыть сайт через Mozilla Firefox. Это наиболее быстрый способ проверки и возможного обхода проблемы на стороне конечного пользователя.
Итог
Если сайт выборочно не открывается у части пользователей по HTTPS, а сервер работает корректно и доступен из других сетей, проблема может быть связана с прохождением TLS-соединения через внешние сети. Временными мерами могут быть перевод сайта на TLS 1.2 и рекомендация пользователям временно использовать Mozilla Firefox.
В первую очередь используйте два временных варианта: настройку nginx с поддержкой TLS 1.2 и рекомендацию пользователям временно открыть сайт через Mozilla Firefox. После нормализации ситуации рекомендуется вернуть современную безопасную TLS-конфигурацию.