"Сертификат открытого ключа и закрытый ключ не совпадают" при использовании сертификата, выданного Godaddy [закрыто]


Я пытаюсь установить SSL-сертификат GoDaddy на новый балансировщик нагрузки, который я настраиваю на Amazon AWS. Я изначально создал сертификат в Godaddy, используя программу keytool для прямой установки на сервере Glassfish 3.1 (Amazon linux ami). У меня не было проблем с получением этой установки непосредственно на сервере. Теперь мне нужно перенести сертификат с веб-сервера на новый балансировщик нагрузки. Amazon требует, чтобы закрытый ключ и сертификаты были в формате PEM, поэтому я использовал инструмент "rekey" в GoDaddy для создания новых сертификатов. Когда я загружаю их на экране настройки балансировщика нагрузки на консоли AWS Mgmt, я получаю сообщение об ошибке: "сертификат открытого ключа и закрытый ключ не совпадают."

вот как я создаю ключи:

$ openssl genrsa -des3 -out private.key 2048
$ openssl req -new -key private.key -out apps.mydomain.com.csr

затем я представляю .csr-файл в GoDaddy во время процесса" rekey". Как только ключ будет завершен, я загружаю 2 вновь созданных сертификата (apps.mydomain.com.crt & gd_bundle.ЭЛТ.) Я загружаю их, выбирая (Apache) в качестве типа сервера (Я также пробовал "другие" и "Cpanel", но все выглядят одинаково).

на этом этапе я удаляю шифрование из частного.ключевой файл с помощью следующей команды:

$ openssl rsa -in private.key -out private.pem

на этом этапе я возвращаюсь в консоль AWS Mgmt, создаю балансировщик нагрузки, добавляю безопасное перенаправление сервера и помещаю содержимое следующих файлов в соответствующие поля на экране, где он просит настроить сертификат ssl:

private.pem --> Private Key
apps.mydomain.com.crt --> Public Key Certificate
gd_bundle.crt --> Certificate Chain

когда я нажимаю "продолжить кнопку" я получаю ошибку " Ошибка: сертификат открытого ключа и закрытый ключ не совпадают."

- есть ли способ проверить, что я получаю действительное сообщение об ошибке от Amazon? Мне кажется странным, что ключи не совпадают, когда я следую инструкциям GoDaddy довольно близко.

Я пробовал создать частный.ключевой файл без шифрования RSA перед созданием .КСО и это, кажется, не имеет никакого значения.

Я также предполагаю, что этот.файлы crt, которые я загружаю из GoDaddy, находятся .Формат PEM, но я не уверен, как это проверить.

какие идеи?

6 84

6 ответов:

для меня, это было легко два этапа:

  1. преобразуйте закрытый ключ в PEM:

    openssl rsa -in yourdomain.key -outform PEM

  2. преобразуйте сертификат и пакет сертификатов в PEM:

    openssl x509 -inform PEM -in yourdomain.crt

    openssl x509 -inform PEM -in bundle.crt

просто для записи и всех, кто пытается понять это:

имя_домена.ключ -> команды: sudo openssl rsa -in yourdomain.key -outform PEM -out yourdomain.pem -> закрытый ключ

имя_домена.ЭЛТ - >открытый ключ

gd_bundle.ЭЛТ - >цепочка сертификатов

и вы хорошо идти :)

похоже, проблема заключалась в том, как я копировал содержимое ключа и сертификатов в консоль управления AWS. Я использовал рабочий стол Ubuntu, работающий в Virtual Box на рабочем столе Windows 7; скопируйте и вставьте значения с экрана gedit в браузер, работающий в окне Windows. Как только я открыл файлы ключей и сертификатов в том же окне, что и веб-браузер (Windows в этом случае), сертификаты прошли просто отлично. Я предполагаю, что некоторые части файла не более правильно при использовании общей платы клипов между клиентом виртуальной коробки и хостом. Дело закрыто.

мы нашли альтернативное решение этой проблемы. У нас были те же симптомы с той же ошибкой.

затем мы попытались повторно ввести коды pem еще раз, но на этот раз мы обязательно нажмем enter один раз и убедитесь, что курсор находится на пустой строке в конце каждого окна. Потом мы его спасли. ЭТО СРАБОТАЛО.

Это решило нашу проблему, поэтому она может решить ее для других.

один маленький попался. Я использую окно Windows (Win 7 Pro), и когда я использовал порт windows OpenSSL, выведенные файлы имели символы конца строки в стиле Unix (LF).

Мне пришлось конвертировать файл в Windows style (CRLF) для загрузки закрытого ключа.

Я могу предложить вам альтернативное решение и информацию вам людей. Как правило, все сертификаты имеют формат файла PEM. Вы можете просто открыть блокнот или любой текстовый редактор и перетащить файлы, которые вы получили .формат файла crt. Который обычно называется как .Файл PEM.Если сертификат загружен в ваш keytool, вы можете экспортировать сертификат в виде pfx-файла из keytool. Затем вы можете отделить файл pfx от закрытого ключа из файла pfx. Потому что файл pfx является сочетание вашего сертификата и частного key.So вы можете отдельно получить файл закрытого ключа и использовать его на своем amazon aws.

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