Firefox не получает полную цепочку сертификатов

Firefox не получает полную цепочку сертификатов

Сервер: Windows 2012 R2 / IIS 8.5 с использованием SNI (виртуальная машина Azure)

У меня есть SSL-сертификат, который установлен и работает во всех браузерах, кроме Firefox и iOS Safari. Цепочка в Chrome и IE выглядит следующим образом:

Baltimore CyberTrust Root
---->XX Public Root Certification Authority
-------->XX Certification Authority
----------->xxx.domain.com

В Firefox и Safari на iOS вы получаете сообщение о том, что сайт не является доверенным, и если вы просматриваете сертификат через «Добавить исключение», цепочка выглядит следующим образом:

XX Certification Authority
----->xxx.domain.com

XX Certification Authority подписал сертификат xx.domain.com. Public Root Certification Authority подписал XX Certification Authority, а CyberTrust подписал Public Root Certification.

Промежуточные сертификаты находятся в хранилище Intermediate Certification Authorities на сервере. По какой-то причине Firefox не загружает полную цепочку сертификатов (или сервер ее не отправляет). Я пробовал удалить cert8.db в профиле Firefox, и это случалось на чистых машинах постоянно.

Я протестировал свой домен на sslshopper.com и ssllabs.com. Они не сообщают об ошибках и сообщают, что все промежуточные сертификаты установлены правильно.

решение1

Они не сообщают ни о каких ошибках и сообщают, что все промежуточные сертификаты установлены правильно.

Симптомы, которые вы описываете, сильно противоречат этому утверждению. Chrome (и IE?) загружают отсутствующие промежуточные сертификаты самостоятельно, в то время как Firefox и большинство мобильных приложений этого не делают. SSLLabs не будет отмечать эти промежуточные сертификаты как отсутствующие, но они будут отмечены как «Дополнительная загрузка».

Если это действительно не так, проверьте, включены ли на вашем сервере IPv4 и IPv6, и отличается ли настройка для IPv6. SSLLabs не проверяет настройку IPv6. Использование IPv6 зависит от ОС, подключения и предпочтений браузера, поэтому это также может объяснять такие различия. Другие различия в этой области — это разные IP-адреса сервера в зависимости от местоположения или разных тестов, т. е. иногда www.example.comи иногда только example.com.

решение2

После долгих проб и ошибок мне наконец удалось это исправить. Я не знаю точно, что именно исправило это, но я продолжил загружать несколько промежуточных сертификатов из моего центра сертификации. Хотя я загрузил промежуточные сертификаты, которые соответствовали цепочке сертификатов по имени, они, похоже, не совпадали по серийному номеру. Я наконец нашел комбинацию, которая понравилась Firefox и iOS Safari. Тем не менее, SSL Labs так и не показал дополнительную загрузку.

Связанный контент