Назад | Перейти на главную страницу

Завершение запроса сертификата через командную строку в Windows Server

Я администрирую несколько серверов Windows (в основном 2008 R2 или 2012 R2), и мне приходится обрабатывать много обновлений сертификатов SSL. Когда мы продлеваем подписку у нашего поставщика Globalsign, они автоматически генерируют запрос на сертификат, используемый для продления. Когда я устанавливаю заполненный сертификат через раздел «Сертификаты сервера» в IIS, он без проблем принимает сертификат. Однако, когда я пытаюсь использовать certreq -accept "C: \ certpath.cer" для установки заполненного сертификата, он возвращает ошибку, подобную следующей:

Обработчик запроса сертификата: не удается найти объект или свойство. 0x80092004 (-2146885628 CRYPT_E_NOT_FOUND)

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

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

  1. Вы пытаетесь установить один и тот же сертификат на несколько серверов?
  2. Предпринимаете ли вы шаги локально на своем сервере, чтобы инициировать запрос сертификата?
  3. Или вы инициируете запрос через веб-портал поставщиков?
  4. Вы ищете способ создания локального запроса?
  5. Или способ установить отправленный вам готовый сертификат?

Если вы ищете №3 и №5 (возможно, №1) ...

Использовать CERTUTIL.EXE
https://technet.microsoft.com/en-us/library/cc732443.aspx#BKMK_addstore

CertUtil -addstore CertificateStoreName InFile
CertUtil -addstore My C:\certpath.cer
certutil -addstore -?

Certutil -addstore По умолчанию я использую персональный магазин компьютера. Добавьте «-user», чтобы установить сертификат в личное хранилище текущего пользователя.

Или используйте Import-Certificate cmdLet для серверов с ОС с достаточно новой версией powershell, где этот cmdLet доступен.
https://technet.microsoft.com/en-us/%5Clibrary/hh848630%28v=wps.630%29.aspx