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

Установленный сертификат SSL в хранилище сертификатов, но не в списке сертификатов IIS

После установки сертификата сертификата подстановки в хранилище сертификатов сертификат не отображается в списке сертификатов IIS для использования с привязками сайтов.

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

Как вы можете исправить эту проблему без нового запроса или связаться с кем-либо за ключом (если, например, за день до запуска?;-))

4b9b3361

Ответ 1

Я столкнулся с этой проблемой сегодня. Из-за сроков и некоторых других проблем получить ключ у провайдера было невозможно.

Я нашел следующее решение здесь (под комментарием pixelloa) и подумал, что было бы хорошо получить ответ и о Qaru.

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

Чтобы это исправить, используйте оснастку MMC для импорта сертификата в PERSONAL, щелкните по нему и возьмите серийный номер. Перейти к DOS, запустить Certutil -repairstore мой "вставить серийный номер здесь" (вам нужны кавычки), затем обновите MMC персональными сертификатами, щелкните правой кнопкой мыши по нему - экспортируйте - выберите все, кроме УДАЛИТЬ ЧАСТНЫЙ КЛЮЧ, нажмите ОК. Затем перейдите в IIS и Сертификат ИМПОРТА вместо завершения запроса.

Для чего бы это ни стоило, все, что я на самом деле должен был сделать, это запустить команду certutil -repairstore, и мой сертификат сработал. Я запустил экспорт и установил пароль для самого экспорта, но мне не нужно было повторно импортировать сертификат. Сертификат теперь отображается в списке сертификатов IIS и может использоваться для привязок HTTPS.

Я надеюсь, что это помогло кому-то.

Ответ 2

Имел ту же проблему и нашел легкое решение благодаря вдохновению из приведенных выше ответов. Вот краткое пошаговое резюме:

  • Сначала откройте MMC с подключением сертификатов.
  • Перетащите новый сертификат (отсутствующий ключ в левой верхней части значка сертификата) в хранилище сертификатов "Личное". Это я сделал, потому что имя магазина "Хостинг" - это так называемое дружественное имя, а не настоящее имя магазина, и я не мог вспомнить настоящее имя, которое необходимо для командной строки certutil. Вместо этого я просто вспомнил, что настоящее имя "Личный" - "Мой". Делает все остальное легким, и как только я закончил, я просто вернул сертификат в "Веб-хостинг".
  • Как только новый сертификат (отсутствует ключ) находится в "Личном" хранилище, запустите командную строку и выполните следующую команду: certutil -store "Мой" (при условии, что нужны котировки)
  • Обратите внимание на серийный номер вашего сертификата. Это в первой строке дампа сертификата. Если у вас есть другие сертификаты в магазине "Мой", вам нужно найти тот, который вы только что переместили. Посмотрите дату истечения срока действия и имя, например. Отметьте и скопируйте серийный номер.
  • Теперь выпустите команду certutil -repairstore "Мой" и серийный номер этой записи здесь > и обратите внимание, что закрытый ключ проверен.
  • Переместите сертификат обратно в хранилище "Веб-хостинг" и обновите его. Теперь вы должны увидеть значок сертификата, наложенный на значок маленького ключа в верхней левой части.
  • Теперь вы можете выбрать сертификат из диалогового окна привязки IIS.

Удачи!

Ответ 3

Если вы используете Godaddy в качестве центра сертификации и столкнулись с этой проблемой; Все, что вам нужно сделать, это заново набрать сертификат. Я попробовал вышеупомянутый certutil -repairstore мой "вставить серийный номер здесь", но система хотела, чтобы я использовал смарт-карту для аутентификации. (Запуск IIS10 на сервере 2016 и 2012R2)

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

Ответ 4

Вы можете экспортировать pfx из IIS на другой сервер, если у вас успешно установлен сервер с сертификатом.

Update:

Работа над очередным раундом обновлений сертификатов (обновление) Я снова столкнулся с этой проблемой на каждом сервере, который я пробовал. Ответ @Geir не сработал, но это дало мне представление. Я определил сервер, на котором я сгенерировал запрос сертификата, и успешно установил там новый сертификат. С этого сервера я смог экспортировать pfx и затем импортировать версию pfx на остальные серверы. Нет необходимости повторять запрос Cert.

Ответ 5

была та же проблема.

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

Если вы получили свой сертификат, просто попросите его перепроверить, он попросит новый CSR файл. То есть Go Daddy позволяет вам повторно использовать ключ, просто найти сертификат и нажать "управлять"

Я не эксперт в этом, но это удалось работать.

Ответ 6

Чтобы решить проблему, вам нужно импортировать частный сертификат (PFX).

Если у вас нет PFX, используйте OpenSSL для его создания:

  • Загрузить и установить OpenSSL
  • Откройте командную строку и запустите:

    openssl pkcs12 -export -in public_certificate.cer -inkey server.key -out private_certificate.pfx

Затем установите private_certificate.pfx(щелкните правой кнопкой мыши → Установить сертификат).

Теперь ваш сертификат больше не исчезает, и вы можете связывать веб-сайт через SSL.

Отличный ресурс: https://blog.lextudio.com/the-whole-story-of-server-certificate-disappears-in-iis-7-7-5-8-8-5-10-0-after-installing-it-why-b66e802baa38

Ответ 7

Это может произойти, если вы, например, сгенерировать новый запрос сертификата после утверждения вашего старого сертификата. Новый запрос заставит IIS удалить закрытый ключ, связанный с вашим первым запросом на сертификат, и, следовательно, при импорте (теперь подписанного) сертификата, связанного с вашим первым запросом, у него не будет закрытого ключа, связанного с ним. Поскольку он не имеет закрытого ключа, он не может использоваться для привязки SSL и не будет отображаться в диспетчере IIS.

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

  • Пуск → mmc.exe → Добавить оснастку → Сертификаты → Учетная запись компьютера. Убедитесь, что установленный сертификат появился на вкладке "Персональные/сертификаты". Если нет, импортируйте его. Отсутствующий закрытый ключ визуализируется значком рядом с сертификатом, не содержащим значок ключа.
  • Откройте файл сертификата (.cer) с диска, дважды щелкнув по нему. На вкладке "Сведения" обратите внимание на серийный номер.
  • Пуск → cmd.exe. Введите "certutil -repairstore my (serialnumberhere)". Серийный номер не должен содержать пробелов. Может быть 8 или более цифр.

Если команда certutil возвращается с завершенной командой -repairstore, секретный ключ вашего сертификата, скорее всего, был восстановлен. Вы можете проверить это, перейдя в список сертификатов MMC и нажав F5 - в случае успеха у вашего сертификата теперь будет маленький ключ в его значке. Затем вы сможете выбрать свой сертификат из IIS.

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

Ответ 8

У меня было то же самое в IIS 10.

Я исправил его, импортировав файл .pfx с помощью диспетчера IIS.

Выберите корень сервера (над сайтами - node), нажмите "Сертификаты сервера" в правой панели и импортируйте pfx. Затем я мог бы выбрать его из раскрывающегося списка при создании привязки ssl для сайта под сайтами

Ответ 9

Это происходит, когда установленный сертификат не содержит ваш закрытый ключ.

Чтобы проверить, содержит ли сертификат закрытый ключ и как его исправить, используйте этот приятный учебник, предоставленный Entrust

Ответ 10

Проблема - это запрос сертификата (CSR) не был создан из IIS. Если вы создали из других источников, например OpenSSL, это вызовет проблему. Вам необходимо сгенерировать запрос сертификата (CSR) из IIS → Создать запрос сертификата, затем ввести все данные и затем отправить поставщику для обновления сертификата SSL. После этого моя работала правильно.

Ответ 11

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

Ответ 12

когда у вас есть один сертификат и два разных веб-сервера, как я его исправил:

  • Элемент списка
  • Вы должны сгенерировать сертификат на одном из серверов, как обычно в IIS. Затем на этом сервере вы также можете заполнить сертификат в IIS.
  • Запустите программу DigiCertUtil и экспортируйте ее сертификат
  • Перейдите на другой веб-сервер в IIS в режиме безопасности сертификаты Импортируйте этот файл с шага 3.
  • Затем используйте этот сертификат для создания привязки.

Ответ 13

Команда certutil -repairstore, упомянутая в других ответах, работала для меня, но если ваш сертификат находится в хранилище "Веб-хостинг", и вы не хотите его перемещать, настоящее (внутреннее) имя хранилища "Веб-хостинг" "WebHosting", для тех, кто выполняет шаги, упомянутые здесь.