Подтвердить что ты не робот

Проблема установки SSL - "несоответствие значения ключа" (но они соответствуют?)

Итак, мне был отправлен новый публичный сертификат для установки на сервер (файл .crt). Готово. Перезапустите apache - "FAILED".

Сообщение об ошибке:

[Tue Jan 11 12:51:37 2011] [error] Unable to configure RSA server private key 
[Tue Jan 11 12:51:37 2011] [error] SSL Library Error: 185073780 error:0B080074:
x509 certificate routines:X509_check_private_key:key values mismatch

Я проверил значения ключей:

openssl rsa -noout -modulus -in server.key | openssl md5
openssl x509 -noout -modulus -in server.crt | openssl md5

и они совпадают.

Я проверил пути в моем файле ssl.conf, и они указывают на правильные файлы.

Если я восстановил старый (завершенный) файл cert, apache запускается нормально, поэтому ему определенно не нравится что-то новое.

Это GeoTrust QuickSSL, и в нем появился "intermediate.crt", который я должен использовать вместо файла "ca-bundle.crt", который я использовал до

SSLCertificateFile /etc/pki/tls/certs/www.domain.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/www.domain.com.key
SSLCACertificateFile /etc/pki/tls/certs/intermediate.crt

Любые идеи, что я могу делать неправильно? Вам нужна дополнительная информация?

Спасибо!

4b9b3361

Ответ 1

Я также столкнулся с той же ошибкой. В моем случае я должен был предоставить дополнительные сертификаты CA в цепочке проверки. И вместо того, чтобы поставлять сертификат и ключ в отдельных файлах, я объединил их в файл .pem.

Однако, когда вы это делаете, важны порядок ключа и сертификата плюс промежуточный (ые). Правильный порядок:

your private key
your certificate
(intermediate) CA certificate lowest in the hierarchy
other CA certificates higher in the hierarchy...
(intermediate) CA certificate highest in the hierarchy

Ответ 2

При повторной выдаче моего Rapid SSL-сертификата (приобретенного через Namecheap) для борьбы с ошибкой Heartbeat новый сертификат всегда выдается против закрытого ключа, используемого для предыдущего запроса CSR. После пятого переиздания спаривание с закрытым ключом, используемым в четвертой попытке повторной передачи, сделало все хорошо.

Ответ 3

У меня недавно была такая же проблема на одном из моих серверов CentOS 6.5, и это было до того момента, когда я сгенерировал KEY и CSR.

У меня есть три сайта, работающих на этом сервере в виртуальных хостах, все с выделенными IP-адресами, и каждый сайт имеет свой собственный сертификат SSL.

В спешке, когда меняли один из сертификатов, я просто тупо следовал руководству поставщика сертификатов, чтобы получить CSR и установить его в Apache, и мне было приказано использовать следующую команду:

openssl req -new -newkey rsa:2048 -nodes -keyout domain-name-here.key -out domain-name-here.csr

После установки нового сертификата я также столкнулся с тем, что Apache не /var/log/httpd/ssl_error_log же ошибками в /var/log/httpd/ssl_error_log:

[error] SSL Library Error: 185073780 error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch

[error] Unable to configure RSA server private key

Теперь я действительно должен был проверить свои файлы .bash_history, поскольку я успешно делал это в CentOS много раз раньше.

Я должен был выполнить эти две команды вместо:

openssl genrsa -des3 -out domain-name-here.co.uk.key 2048

openssl req -new -key domain-name-here.co.uk.key -out domain-name-here.co.uk.csr

Затем он успешно сгенерировал CSR и KEY, и я повторно подал заявку на сертификат, используя только что полученный CSR, затем применил новый сертификат и добавил новый файл ключа, и, наконец, Apache запустился бы чисто.

Кроме того, чтобы отметить, что после небольшой настройки мы теперь набираем A+ в тесте SSL-лабораторий.

Ответ 4

убедитесь, что все файлы сертификатов закодированы с помощью ANSI, а не UTF-8.

Для меня все тесты сказали: key, crt и csr соответствуют, но журналы сказали X509_check_private_key:key values mismatch, пока я не увидел, что один из файлов был закодирован в UTF-8.

Ответ 5

В моем случае у меня было два сайта и два тонких разных секретных ключа:

nginx: [emerg] SSL_CTX_use_PrivateKey_file("/some/path/server.key") failed (SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch)

После того, как я исправил это, сообщение об ошибке изменилось, указав /some/path/server.pem. Обратите внимание на другой закрытый ключ, который отличается только расширением файла. У меня было два разных сайта, зашифрованных с помощью разных ключей (это означает, что я исправил первый сайт, но теперь нужно исправить второй сайт). Поэтому обязательно прочтите сообщение об ошибке!

Ответ 6

У нас также возникла проблема с NameCheap, выпущенный Cert соответствовал CSR, который использовался для создания предыдущего CERT. Мы сообщаем им через их страницу поддержки, и они сказали, что они уже знали о проблеме.

Ответ 7

У Dynadot, похоже, есть те же проблемы с сертификатами RapidSSL, которые они повторно выпускают. Я только что получил неработающий сертификат, который затем вызвал еще одну проблему с Apache, когда это было исправлено. Я нашел этот вопрос и отвечу здесь на оригинальную проблему, спасибо за информацию всем. Я откажусь от RapidSSL Cert, так как у меня есть некоторые проблемы с совместимостью с ним, и вместо этого вы приобретете новую версию AlphaSSL.

Ответ 8

В соответствии с часто задаваемыми вопросами на веб-сайте Apache модуль и общий показатель для сертификата и ключа должны соответствовать так, чтобы это было допустимым.

http://httpd.apache.org/docs/2.0/ssl/ssl_faq.html#verify

Как вы и другие уже заявили, работайте с издателем сертификатов

Ответ 9

Самый сложный бит в моем случае - настройка SSLCACertificateFile. После того, как сертификационная компания выпустила наш сертификат, вместе с ним мы получили еще два сертификата: промежуточный и корневой сертификат. Какой из них использовать для SSLCACertificateFile? И..

Вот как выглядит моя цепочка сертификатов:

enter image description here

И для SSLCACertificateFile мне нужно объединить digicert_sha2_high_assurance_server_ca.crt и digicert.crt в один файл в указанном порядке.