Жизнь ИТ-администратора обычно вращается вокруг сброса паролей, приведения в порядок почтовых ящиков пользователей и объяснения людям, что они не могут иметь больше места для хранения данных. Однако время от времени приходится работать над чем-то интересным. На прошлой неделе это была новая ошибка, которую я никогда раньше не видел, ‘err_ssl_version_or_cipher_mismatch’ в Chrome.
Содержание
Синтаксис ошибки дал мне подсказку, что не так, была какая-то проблема с SSL сертификатом или настройками безопасности сайта или браузера. Флаг SSL означал, что, скорее всего, что-то не так с SSL-сертификатом сайта или с ожиданиями Chrome, когда он увидел этот сертификат. Должен признаться, что я не знал большего, поэтому мне пришлось провести небольшое исследование.
Сначала я покажу вам, как исправить проблему, а затем расскажу, как все это работает.
Fix err_ssl_version_or_cipher_mismatch in Chrome
Если есть несоответствие в поддерживаемых версиях SSL и версии, используемой веб-сервером, отправляющим сертификат, вы увидите это сообщение. Оно было очень распространено пару лет назад, когда Chrome перестал поддерживать SSL 3.0, но теперь должно появляться реже, если только вы не используете устаревший браузер или сервер, отправляющий сертификат, не имеет проблем с конфигурацией.
Вот как это исправить.
- Откройте Chrome и введите chrome://flags в поле URL.
- Перейдите к разделу «Максимальная версия TLS включена».
- Установите значение по умолчанию или попробуйте TLS 1.3.
- Выберите Перезапустить сейчас.
В старых руководствах говорилось, что нужно выбрать Минимальная поддерживаемая версия SSL/TLS и установить ее на SSLv3, но в новых версиях Chrome параметры изменились. Теоретически, эта ошибка вообще не должна возникать в новых версиях Chrome, поскольку SSL теперь обрабатывается по-другому. Однако она все равно иногда появляется.
Если это не помогло устранить ошибку err_ssl_version_or_cipher_mismatch в Chrome, вам может понадобиться очистить кэш SSL-сертификатов.
- Перейдите к значку Настройки с тремя точками в Chrome.
- Выберите Дополнительно в нижней части страницы.
- Выберите Открыть настройки прокси в поле Система.
- Выберите вкладку Содержание и выберите Очистить состояние SSL.
- Выберите OK и закройте окна.
В результате вы перестанете видеть ошибку err_ssl_version_or_cipher_mismatch.
SSL сертификаты
С тех пор как мы начали пытаться защитить интернет с помощью HTTPS вместо HTTP, SSL сертификаты стали важнее, чем когда-либо. Они являются частью безопасного соединения между вашим браузером и веб-хостом, которое может шифровать все данные, передаваемые между вами. Каждый раз, когда вы покупаете что-то или пользуетесь интернет-банкингом, вам нужно, чтобы ваши данные были зашифрованы, чтобы их нельзя было перехватить. В этом вам поможет SSL-сертификат.
Сертификат SSL выдается доверенной стороной, называемой центром сертификации (Certificate Authority или CA). Она выдает его владельцу сайта и устанавливает его на свой веб-сервер. Он содержит открытый и закрытый ключи, которые программа шифрования в браузере использует для создания безопасного соединения.
Безопасное соединение
Существует пять основных этапов создания зашифрованного сеанса просмотра веб-страниц. Это происходит в течение одной-двух секунд за кулисами. Каждый раз, когда вы заходите на защищенный сайт, этот процесс повторяется.
- Когда веб-браузер заходит на защищенный сайт (HTTPS), его встречает рукопожатие SSL. Это позволяет убедиться, что и сервер, и браузер могут принять защищенное соединение и имеют все необходимое для этого. После завершения рукопожатия происходит обмен открытым ключом шифрования.
- После подтверждения сервер отправляет копию своего SSL-сертификата вашему браузеру. Он включает открытый ключ, с помощью которого можно начать зашифрованную сессию.
- Браузер проверяет сертификат по списку Certificate Authority, чтобы убедиться в его реальности. Он также проверяет, не истек ли срок его действия и не был ли он подделан.
- Затем браузер шифрует соединение и отправляет веб-серверу симметричный сертификат сессии, который будет действовать только в течение того времени, пока вы находитесь на сайте. Для этого он использует открытый ключ сервера.
- Веб-сервер расшифровывает симметричный сеансовый ключ своим закрытым ключом и подтверждает соединение с вашим браузером.
Если браузер не видит того, что он ожидает увидеть в SSL-сертификате, может возникнуть ошибка err_ssl_version_or_cipher_mismatch. Это происходит только в Chrome, поскольку Firefox, Opera, Safari и другие работают с SSL-сертификатами по-другому.
Эта ошибка действительно возникала только в старых версиях Chrome (версия 40), поскольку он обрабатывал SSL по-другому. Новые версии Chrome обрабатывают SSL более тщательно, и вы никогда не столкнетесь с этой проблемой. Хотя первое исправление настраивает параметры TLS, а не SSL, оно, похоже, имеет значение. Однако второе исправление, очистка состояния SSL, скорее всего, более эффективно.
Вы недавно видели ошибку err_ssl_version_or_cipher_mismatch? Есть ли другие способы ее устранения? Расскажите нам об этом ниже, если это так!