Вопрос или проблема
У меня есть сервер HAProxy / stunnel, который обрабатывает SSL для наших сайтов на AWS. Во время тестирования я создал самоподписанный сертификат на этом сервере и проверил его с моего компьютера, используя Chrome, чтобы убедиться, что stunnel работает правильно.
Теперь я установил легитимный сертификат на этом сервере. Когда я открываю сайт с моего компьютера в Chrome, он выдает следующую ошибку:
Ошибка 113
(net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH):
Неизвестная ошибка.
Я полагаю, что Chrome кэшировал ключ для самоподписанного сертификата, и он не соответствует легитимному сертификату. Этот сайт работает во всех других браузерах на моем компьютере, так что это проблема именно Chrome.
Интересная заметка: Когда я открываю страницу в режиме инкогнито (Ctrl+Shift+N), все работает правильно. Таким образом, это явно что-то связанное с кэшем.
Я сделал все, что мог придумать (очистил кэш, удалил сертификаты со страницы Личные и Другие пользователи в диалоговом окне Управление сертификатами, Ctrl+F5 и т.д.).
Мой компьютер работает на Windows 7 x64. Версия Chrome: 12.0.742.91.
На форуме помощи Google Chrome есть описание, которое звучит как та же проблема; однако решения не найдено.
ОБНОВЛЕНИЕ: Похоже, сегодня проблема «самоисцелилась». Я ненавижу такие проблемы. Я все еще не знаю, что ее вызвало или как она решила себя. Возможно, кэшированный сертификат истек или что-то в этом роде, но мне все же интересно, где хранится эта информация и как ее проверить.
Chrome хранит состояние сертификата SSL для каждого хоста в истории браузера.
Поэтому просто очистите историю браузера (Ctrl
+Shift
+Del
), по крайней мере, следующие части:
- Кэшированные изображения и файлы
- Данные хостируемых приложений
- Лицензии на контент
- Файлы cookie и другие данные сайта, для версии Chrome 64
Решение 2. Если вышеуказанное не помогает, попробуйте это:
- Закройте Chrome, завершите все фоновые процессы
chrome
- Удалите каталог:
%USERPROFILE%/AppData/Local/Google/Chrome/User Data/CertificateTransparency
В Windows:
Свойства интернета > Контент > Очистить состояние SSL
Затем введите в адресной строке: chrome://restart
Вам не нужно очищать всю историю.
Многие проблемы с сертификатами SSL можно решить просто, удалив файл из папки кэша.
В Chrome или Chromium файл, который нужно удалить, это cert9.db
в папке ~/.pki/nssdb
. (В Firefox вам нужно удалить cert8.db
.)
Внимание! После удаления этих файлов вам нужно будет снова зарегистрировать ЦС в вашем браузере.
Это решение для систем Linux, шаги для пользователей Windows будут несколько другими.
На сколько я знаю, сертификаты не специфичны для Google Chrome (по крайней мере, на Windows), а для всей системы. Вы уже удалили этот сертификат через интерфейс Chrome, так что он должен исчезнуть.
Чтобы быть уверенным, вы могли бы попробовать.
Пуск → Выполнить →
certmgr.msc
Другой инструмент для использования — CCleaner. Он должен помочь с более тщательной очисткой кэша Chrome.
Для Windows 10 есть способ очистить только информацию OCSP и CRL, не очищая историю Chrome.
Более подробную информацию можно найти в блоге г-на Димцева https://web.archive.org/web/20211209012218/http://www.carbonwind.net/blog/post/Viewing-clearing-and-disabling-the-OCSP-and-CRL-cache-on-Windows-7.aspx
Запуск предложенной команды certutil -urlcache ocsp delete
вероятно приведет к FAILED: 0x80070020 (WIN32: 32 ERROR_SHARING_VIOLATION)
, если Chrome запущен.
Я подтвердил, что это сработало для меня на Windows 10:
- Предварительное условие: подтвердите (используйте другой компьютер, который не “знает” о вашем сайте), что ваш сервер предоставляет новый сертификат совершенно новым компьютерам, хотя бы.
- Очистите кэш Chrome. Я выбрал очистить все три представленных варианта при использовании CTRL+SHIFT+DEL: Историю, Файлы cookie и Кэш. Однако вы, вероятно, можете сохранить свою историю.
- Закройте chrome, и с помощью Диспетчера задач, убедитесь, что не запущен chrome.exe. Я думаю, что chrome кэширует сертификат в памяти.
- Снова откройте chrome и посетите сайт. Ваш браузер chrome теперь должен получить последний сертификат и не использовать кэшированный.
Учитывая множество сложных и неправильных ответов:
Chrome кэширует сертификаты и не имеет опции их удаления.
Тем не менее, вы можете просто заставить его получить новый сертификат, например, если сайт “www.domain.com”, вы открываете “domain.com”. Это заставит Chrome заново скачать (тот же) сертификат, который затем обновляет оба.
Более точный способ:
Ctrl+Shift+Del (или Настройки > Дополнительно > Очистить данные браузера)
[ Временной диапазон: Все время ]
- Кэшированные изображения и файлы
нажмите: Очистить данные
Ответ или решение
Чтобы очистить SSL-кэш в Google Chrome и устранить ошибки, связанные с сертификатами, выполните следующие шаги:
1. Очистка кэша браузера
Вам необходимо очистить кэш браузера, чтобы удалить все устаревшие данные, которые могут вызвать конфликты с сертификатами:
- Откройте Google Chrome.
- Нажмите комбинацию клавиш Ctrl + Shift + Del или перейдите в Настройки > Конфиденциальность и безопасность > Очистить данные браузера.
- В выпадающем меню выберите Все время в качестве диапазона времени.
- Убедитесь, что отмечены следующие пункты:
- Кэшированные изображения и файлы
- Данные сайтов и файлы cookie
- Нажмите кнопку Очистить данные.
2. Закройте все процессы Chrome
После очистки кэша закройте браузер и убедитесь, что все процессы Chrome завершены:
- Откройте Диспетчер задач (Task Manager) с помощью комбинации клавиш Ctrl + Shift + Esc.
- Найдите все процессы под названием chrome.exe и завершите их.
3. Очистка урны для сертификатов
Если проблема сохраняется, выполните следующие дополнительные шаги:
- Откройте меню Пуск и введите certmgr.msc, чтобы открыть Менеджер сертификатов.
- Убедитесь, что удалены все старые сертификаты, связанные с вашим сайтом. Это может включать как личные, так и общие сертификаты.
- Следующие действия можно выполнить для очистки внутреннего кэша прозрачности сертификатов:
- Откройте проводник и перейдите к папке:
%USERPROFILE%\AppData\Local\Google\Chrome\User Data\CertificateTransparency
- Удалите все файлы из этой папки.
- Откройте проводник и перейдите к папке:
4. Дополнительные методы (по желанию)
Если проблема не решается, вы можете попробовать следующие команды в командной строке:
- Откройте командную строку с правами администратора.
- Введите следующую команду для очистки кэша OCSP:
certutil -urlcache ocsp delete
5. Перезагрузка Chrome
После выполнения всех этих операций перезапустите Chrome:
- В адресной строке введите
chrome://restart
, чтобы перезапустить браузер.
Проверка результата
Теперь попробуйте зайти на ваш сайт. Если всё выполнено правильно, Chrome должен загружать новый сертификат, и ошибка SSL должна исчезнуть.
Если проблема все еще сохраняется, возможно, стоит проверить настройки вашего сервера, чтобы убедиться, что он корректно выдает новый сертификат.
Это полное руководство поможет вам очистить кэш SSL в Google Chrome и устранить возникшие проблемы с сертификатами.