Добавление самоподписанного сертификата в доверенное корневое хранилище сертификатов с помощью командной строки

Добавление самоподписанного сертификата в доверенное корневое хранилище сертификатов с помощью командной строки

Есть ли способ добавить сертификат в Local Computer's Trusted Root Certification Authority с помощью командной строки? Я пробовал использовать certmgr.exe, он показывает успех, но когда я проверяю корневой CA, я не вижу там своего сертификата.

Я следовал этому руководству:

http://msdn.microsoft.com/en-us/library/ms172241.aspx

В основном пробую эту команду:

certmgr.exe -add -c mycertificate.cer -s -r localMachine root

Команда работает и показывает успешное выполнение в командной строке, но я не могу увидеть сертификат в фактическом доверенном корневом хранилище через mmc. Может быть, процедура для самоподписанного сертификата отличается? Я настроил сервер IIS с привязкой SSL к этому сертификату, который изначально помещен в хранилище "MY". Но я делаю все через автоматизированные скрипты, поэтому я хочу знать, как я могу добавить этот сертификат в доверенный корневой ЦС с помощью параметра строки cmd??

решение1

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

Установить сертификат корневого центра сертификации из командной строки (cmd.exe)

(Для этого требуется Windows SDK. Visual Studio установит его для вас и добавит в %PATH%.)

certmgr /add /c mycertificate.cer /s /r localMachine root

Обратите внимание, что никаких ошибок не будет; команда всегда будет возвращать успешное выполнение (даже при использовании несуществующего файла для сертификата!). Если сертификат не отображается в диспетчере сертификатов ( certmgr.msc) после запуска этой команды, повторите процесс, используя приведенные ниже ручные шаги, чтобы проверить, нет ли ошибок в вашем файле сертификата.

Ручные действия по установке сертификата корневого центра сертификации

  1. Дважды щелкните по .cerфайлу.
  2. НаСертификатдиалоговое окно, щелкнитеУстановить сертификатчтобы начатьМастер импорта сертификатов.
  3. НаДобро пожаловатьстраница, нажмитеСледующий.
  4. НаМагазин сертификатовстраница, выберитеПоместите все сертификаты в следующее хранилищеи нажмитеПросматривать.
  5. вВыберите хранилище сертификатовдиалоговое окно, выберитеПоказать физические магазины.
  6. Двойной кликдоверенные корневые центры сертификации, выбиратьЛокальный компьютер, а затем нажмитеХОРОШО.
  7. НаМагазин сертификатовстраница, нажмитеСледующий.
  8. На странице сводки просмотрите данные и нажмитеЗаканчивать.

Установка сертификата корневого центра сертификации из PowerShell

Посмотрите замечательный ответ @harrymc ниже.

решение2

Команда PowerShell Импорт-Сертификат можно использовать для импорта сертификата:

Import-Certificate -FilePath "C:\path\Cert.Cer" -CertStoreLocation cert:\CurrentUser\Root

Чтобы запустить его через командную строку (или пакетно), вы можете запустить его следующим образом:

powershell "Import-Certificate -FilePath ^"C:\path\Cert.Cer^" -CertStoreLocation cert:\CurrentUser\Root"

Обратите внимание на использование ^экранирующего символа.

Чтобы вывести список всех доступных хранилищ сертификатов, запустите сеанс PowerShell и введите:

dir cert:\\LocalMachine\

решение3

Powershell "Импорт-Сертификат -FilePath 'C:\path\Cert.Cer' -CertStoreLocation Cert:\LocalMachine\Root"

Путь должен содержать ' вместо " для cmd

Связанный контент