Одной из частых причин неподключающегося SSL является неполное соответствие ключа SSL сертификату. Однотипные файлы на сервере с большим количеством сайтов часто путаются, иногда из-за ошибки на стороне сертификационного центра с сертификатом присылается посторонний ключ.
Проверить соответствие можно используя утилиту openssl.
Соответствие ключа SSL сертификату
Предположим, есть файлы public.key и cert.crt с ключем и сертификатом соответственно.
Проверка выполняется следующим образом:
Для ключа
openssl pkey -in public.key -pubout -outform pem | sha256sum
bebe1fc17ca56566bca02d3e46c07c
Для сертификата
openssl x509 -in cert.crt -pubkey -noout -outform pem | sha256sum
bebe1fc17ca56566bca02d3e46c07c
Вместо sha256sum можно использовать другой способ шифрования, например md5
Естественно, он должен быть одним как для команды с указанием приватного ключа, так и для команды с указанием сертификата домена.
Получившийся хэш должен быть полностью идентичным. Если он различается (как в примере) ключ не соответствует паролю.
При отсутствии соответствия нужно обзавестись подходящим ключем или перевыпустить SSL сертификат.
Сертификационные центры работают напрямую с пользователями или через посредников, как первые так и вторые могут заново провести процедуру выпуска сертификата или аннулировать SSL если с момента выпуска прошло несколько часов или дней. В случае если прислан недействительный ключ — следует обратиться к представителям компании, его отправившей предварительно проверив результат с помощью openssl.
Читайте про установку SSL сертификата на Apache и на Nginx