Публичные центры сертификации не выдают сертификаты непосредственно из своего корня, а вместо этого через промежуточный сертификат (по соображениям безопасности и административным причинам).
Без промежуточных соединений невозможно установить связь между вашим сертификатом и DigiCert. Это означает, что для проверки сертификата вашего сервера недостаточно просто доверять корню DigiCert - клиенты также должны получить всех промежуточных эмитентов в цепочке.
Веб-браузеры могут делать это различными способами: они могут извлекать сертификаты из URL-адреса AIA, хранящегося в сертификате вашего сервера, и они могут кэшировать промежуточных издателей, замеченных ранее, поэтому различные неполные конфигурации, кажется, работают "нормально" при посещении через браузер.
Но базовые TLS-клиенты не так гибки (я имею в виду, что они не могут делать никаких дополнительных HTTP-запросов и не ожидают, что у них будет доступный для записи кэш), и поэтому промежуточные сертификаты должны предоставляться самим TLS-сервером.
Если веб-сервер принимает один файл PEM (.crt), то к этому файлу должны быть добавлены правильные промежуточные сертификаты.
Если DigiCert отправил вам ZIP-файл с сертификатом по электронной почте, один из включенных файлов является промежуточным сертификатом, и вы можете объединить оба файла с помощью cat
или текстового редактора. (Серверный сертификат всегда идет первым, затем его прямой издатель и т.д. Root будет идти в конце, но это избыточно, поэтому не включайте его.)
Если веб-серверу нужен файл PKCS # 12, и вы создали этот файл с openssl export
, то повторно экспортируйте его и укажите промежуточные соединения, используя опцию OpenSSL -CAfile
. (В качестве альтернативы вместо этого укажите объединенный .crt как -cert
.)
Если веб-сервер использует хранилище ключей Java, keytool -importcert
может работать? (Последние версии Java поддерживают и действительно предпочитают напрямую использовать файлы PKCS # 12 в качестве хранилищ ключей, так что это может быть избыточно. Честно говоря, я понятия не имею.)
Проверьте свою конфигурацию, используя SSL-Tools или Qualys SSL Labs. Просто открытие сайта с помощью веб-браузера не является хорошим тестом, из-за того, что я уже упоминал.