Сайт не может нормально функционировать без SSL-сертификата. Если на Вашем сервере не установлена такая система, браузеры будут отмечать, что Ваше соединение небезопасно. Проблема с SSL-сертификатами заключается в том, что они обеспечивают нерушимое шифрование, но подвержены различным ошибкам, связанным с техническими неполадками или неправильной конфигурацией.
Частая проблема, с которой сталкиваются пользователи, – ошибка SSL Handshake Failed с кодом 525. В этом руководстве мы объясним, что это такое и как исправить ошибку Cloudflare 525.
Но сначала давайте разберемся, что такое “рукопожатие SSL”.
Оглавление
- Что такое рукопожатие SSL?
- Что такое ошибка Cloudflare SSL Handshake Failure Error 525?
- Что вызывает сбой в рукопожатии SSL?
- Как исправить ошибку SSL Handshake Failed?
Что такое рукопожатие SSL?
Не углубляясь в то, как работают SSL-сертификаты, можно сказать, что рукопожатие SSL – это первый шаг в установлении безопасного HTTPS-соединения между браузерами и веб-серверами. Когда Вы загружаете сайт в браузере, последний отправляет запрос на зашифрованное соединение с сервером.
Этот процесс происходит в фоновом режиме за считанные миллисекунды. Чтобы соединение было успешным, и Ваш браузер, и сервер сайта должны пройти ряд проверок, таких как версия SSL-сертификата, наборы шифров, которыми будет зашифрована связь, и т.д.
Без рукопожатия SSL браузеры не могут установить HTTPS-соединение с серверами. Это критически важная деталь, которая может выйти из строя по разным причинам.
Давайте посмотрим, почему иногда SSL Handshake не работает.
Что такое ошибка 525 “Сбой рукопожатия SSL”?
Код состояния 525 HTTP известен как “SSL Handshake Failed”. Этот код состояния указывает на то, что произошел сбой в процессе рукопожатия SSL/TLS между сервером и клиентом, который может быть веб-браузером или поставщиком облачных услуг.
При попытке посетить сайт, использующий HTTPS, инициируется рукопожатие SSL/TLS. Этот процесс предназначен для установления безопасного и зашифрованного соединения между браузером пользователя и сервером сайта. Если во время этого рукопожатия возникнут проблемы, это может привести к возникновению 525 ошибки.
Что вызывает ошибку SSL Handshake Failure с кодом 525?
Когда Вы получаете ошибку SSL handshake failed, это означает, что браузер и серверы не смогли установить безопасное соединение. В нашем случае ошибка Cloudflare Error 525 указывает на то, что SSL-квитирование между доменом, использующим Cloudflare CDN (сеть доставки контента), и исходным сервером не удалось.
Сложность всех ошибок SSL заключается в том, что они могут возникать как на стороне клиента, так и на стороне сервера, и пользователь, столкнувшийся с ошибкой, не всегда может ее исправить.
Вот некоторые возможные причины возникновения ошибки Cloudflare Error 525 на стороне клиента:
- Соединение было перехвачено третьей стороной.
- Конфигурация или версия браузера
- Неправильные дата и время на компьютере клиента.
Ниже перечислены несколько проблем на стороне сервера, которые могут вызвать код ошибки 525:
- Несоответствие набора шифров.
- Протокол, используемый клиентом, который не поддерживается сервером.
- Неполный (например, отсутствующий промежуточный сертификат), недействительный или просроченный сертификат.
Как исправить ошибку SSL Handshake Failed?
Не существует универсального решения для этого конкретного кода ошибки 525, поскольку он может возникать в разных местах. Решение состоит в том, чтобы попробовать несколько методов, пока Вы не решите проблему.
Ниже мы приводим несколько возможных быстрых решений.
1. Проверьте действительность Вашего SSL-сертификата
SSL-сертификаты действительны в течение одного года. Если Вы не обновите их до истечения срока действия, браузеры не смогут установить рукопожатие SSL и пометят Ваш сайт как небезопасный.
Продление SSL-сертификата аналогично запросу нового. Вы должны отправить CSR (Certificate Signing Request) в центр сертификации и пройти процесс проверки. Чтобы проверить статус Вашего сертификата, нажмите на значок висячего замка рядом с URL-адресом Вашего сайта и просмотрите сведения о сертификате. Вы увидите, когда истечет срок действия.
В качестве альтернативы Вы можете воспользоваться бесплатным внешним инструментом для сканирования Вашего сертификата на предмет потенциальных ошибок и уязвимостей. Глубокое сканирование может выявить другие потенциальные проблемы в Вашей конфигурации. Если Ваш сертификат уже недействителен или был отозван, его обновление должно устранить проблему.
2. Убедитесь, что Ваш сервер поддерживает SNI
SNI означает Server Name Indication, расширение протокола TLS (Transport Layer Security). Он является частью процесса SSL handshake и гарантирует, что клиентские устройства видят правильный SSL-сертификат для сайта, к которому они пытаются обратиться. SNI позволяет веб-серверу размещать несколько сертификатов TLS для одного IP-адреса.
Нетехнические пользователи могут использовать тот же инструмент SSL, о котором мы упоминали в предыдущем способе исправления, чтобы узнать, требуется ли сайту SNI или нет. Если там написано, что “Ваш сайт работает только в браузерах с поддержкой SNI”, Вам следует обратиться за поддержкой к своему хостинг-провайдеру.
Более технический способ – использовать утилиту Open SSL и проверить расширенный заголовок hello на наличие поля ‘server_name’, чтобы убедиться, что отображаются правильные сертификаты. Вы можете использовать openssl s_client с опцией -servername и без нее:
Без SNI
$ openssl s_client -connect host:port
Используйте SNI
$ openssl s_client -connect host:port -servername host
Если на выходе получаются два разных сертификата с одинаковыми именами, значит, SNI включен, и виновник сбоя в SSL-хендшейке находится где-то в другом месте. Однако, если звонок без SNI не может установить SSL-соединение, SNI либо отключен, либо настроен неправильно. Чтобы решить эту проблему, Вы можете сменить сервер или перейти на выделенный IP-адрес.
3. Убедитесь, что наборы шифров совпадают
SSL-шифр, или набор SSL-шифров, – это набор алгоритмов или инструкций, которые помогают браузерам и веб-серверам безопасно соединяться друг с другом. Несоответствие шифров возникает, когда браузер не может установить безопасное соединение с веб-сервером, использующим HTTPS и SSL. В нашем случае используемые Вашим сервером наборы шифров не поддерживают или не соответствуют тем, которые использует Cloudflare, что приводит к ошибке ‘SSL Handshake Failed Error’.
Одной из возможных причин несоответствия шифров может быть устаревший набор шифров RC4. Она была удалена в версии 48 Chrome, но может по-прежнему появляться в крупных корпоративных системах, обновление которых, как правило, занимает больше времени.
Чтобы проверить, какие шифры могут быть причиной проблемы, мы рекомендуем использовать тест сервера QualySSL. Просто запустите быстрое сканирование и найдите информацию о шифре в разделе Cipher Suites. Если некоторые шифры имеют пометку “WEAK”, Вам, возможно, придется заменить их или попробовать решения, которые мы уже приводили в этом руководстве.
4. Обновите дату и время на Вашем компьютере
Если дата и время на Вашем компьютере не синхронизируются с глобальным сервером времени в Интернете, Ваш браузер может выдать ошибку ‘SSL Handshake Failed Error’. Вот как обновить дату и время:
В Windows:
- Нажмите клавишу Windows и перейдите в Панель управления
- Выберите часы и регион
- В разделе Дата и время выберите Установить время и дату
- Откройте вкладку Время Интернета
- Если Ваш компьютер не настроен на автоматическую синхронизацию по расписанию, нажмите Изменить настройки и установите флажок Синхронизировать с сервером времени в Интернете.
Если Вы используете Mac:
- Выберите Меню Apple > Системные настройки, затем нажмите Дата и время.
- Нажмите на значок замка в углу окна, затем введите пароль администратора, чтобы разблокировать настройки.
- В панели Дата и время убедитесь, что выбрана опция Устанавливать дату и время автоматически, а Ваш Mac подключен к Интернету.
Заключение
Ошибки SSL – не самое приятное зрелище, и, что еще хуже, Вам может потребоваться время, чтобы определить, что их вызывает. В этом отношении код ошибки 525 ‘SSL Handshake Failure’ не является исключением. Чтобы исправить это, Вам необходимо проверить Ваш SSL-сертификат на наличие потенциальных уязвимостей с помощью инструмента SSL-сканера и попробовать один из методов, описанных в этом руководстве.
Для более подробного поиска и устранения неисправностей, связанных с ошибками SSL, ознакомьтесь с нашими подробными руководствами по устранению различных ошибок SSL.
Если Вы обнаружили какие-либо неточности или у Вас есть что добавить к этому учебнику по SSL, пожалуйста, не стесняйтесь присылать нам свои отзывы по адресу [email protected]. Ваш вклад будет очень признателен! Спасибо.
Интернет-иллюстрации от Storyset
Сэкономьте 10% на SSL-сертификатах при заказе сегодня!
Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10