makecert.exe отсутствует в windows 10, как его получить и использовать

Я использую Windows 10. У меня нет файла makecert.exe, который я узнал, когда пытался запускать команды для создания сертификатов, таких какmakecert.exe
Я получаю ошибку:

'makecert' не распознается как внутренняя или внешняя команда, работающая программа или командный файл.

и я уже установил Windows SDK для Windows 10.

6 ответов

Решение

Это может быть установлено, но это, вероятно, просто не в пути.

Например, я могу найти его под C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x64 но я также могу найти другой под C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x86, Точные версии в пути будут зависеть от того, какую именно версию SDK вы установили.

Ни один из этих путей не находится в моем PATH Хотя переменная окружения (и я не помню, чтобы она была явно удалена после установки SDK), поэтому я не могу просто сказать, makecert в командной строке я должен указать полный путь к тому, который хочу запустить.


Удобный способ найти копии у вас where команда. Здесь я ограничил свой поиск каталогом SDK, но вы можете выполнить поиск по всему жесткому диску, если хотите:

C:\Users\Damien>where /R "C:\Program Files (x86)\Windows Kits" makecert.*
C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\arm64\makecert.exe
C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x64\makecert.exe
C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\x86\makecert.exe

В настоящее время makecert устарел , новый способ с PowerShell 'New-SelfSignedCertificate' (как администратор), например:

      1.- We create a new root trusted cert:
$rootCert = New-SelfSignedCertificate -Subject 'CN=TestRootCA,O=TestRootCA,OU=TestRootCA' -KeyExportPolicy Exportable -KeyUsage CertSign,CRLSign,DigitalSignature -KeyLength 2048 -KeyUsageProperty All -KeyAlgorithm 'RSA' -HashAlgorithm 'SHA256'  -Provider 'Microsoft Enhanced RSA and AES Cryptographic Provider'

2.- We create the cert from the root trusted cert chain:
New-SelfSignedCertificate -DnsName "localhost" -FriendlyName "MyCert" -CertStoreLocation "cert:\LocalMachine\My" -Signer $rootCert -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.1") -Provider "Microsoft Strong Cryptographic Provider" -HashAlgorithm "SHA256" -NotAfter (Get-Date).AddYears(10)

3.- We copy the thumbprint returned by the last command

4.- (If neccesary) We remove the last association ip/port/cert:
netsh http delete sslcert ipport=0.0.0.0:443

5.- We associate the new certificate with any ip and port 443 (the appid value does not matter, is any valid guid):
netsh http add sslcert ipport=0.0.0.0:443 appid='{214124cd-d05b-4309-9af9-9caa44b2b74a}' certhash=here_the_copied_thumbprint

6.- Now, you must open MMC (Certificates Local Computer) and drag and drop the TestRootCA  Personal/Certificates folder to Trusted Root Certification Authorities/Certificates.

Эти команды также устраняют ошибку ERR_CERT_WEAK_SIGNATURE_ALGORITHM, возвращаемую позже Google Chrome, поскольку сертификат создается с помощью SHA1 вместо SHA256.

Если у вас установлен Fiddler, он также поставляется с makecert.exe. Он расположен по адресу

      C:\Users\<yourwindowslogin>\AppData\Local\Programs\Fiddler\makecert.exe 

Вот так я установил файл makecert.exe

(Примечание. Сначала я установил Windows 10 SDK, но эта версия не устанавливает makecert.exe в каталог bin. Нет проблем!)

  1. Загрузил ISO- образ Windows SDK версии 7.1 со https://www.microsoft.com/en-us/download/details.aspx?id=8279
  2. Название загруженного ISO-образа GRMSDK_EN_DVD.iso
  3. Перейдите, чтобы загрузить каталог и смонтировать этот ISO (есть программное обеспечение, которое облегчает установку в Windows 7/10)
  4. После подключения перейдите в каталог в ISO, который называется "Setup\WinSDKTools", и вы увидите два файла в этом каталоге. Один из них - "WinSDKTools_x86.msi", а другой - "cab1.cab".
  5. Скопируйте эти два файла в пустой каталог на вашем жестком диске.
  6. С вашего жесткого диска перейдите в каталог, куда вы скопировали эти файлы и щелкните правой кнопкой мыши на "WinSDKTools_x86.msi", затем выберите "Установить"
  7. Найдите на своем жестком диске недавно созданный каталог по адресу "C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v7.1 \ Bin"
  8. Makecert.exe должен теперь находиться в этом новом каталоге вместе с некоторыми другими приложениями и папками
  9. Прибыль?

Я знаю, что сейчас уже слишком поздно, но я решил эту проблему, установив старую версию Windows 10 SDK:

Я просто загружаю этот файл и перемещаю его в c: / winwdows / system32

https://onedrive.live.com/?authkey=%21AKVU0sMEK182FF0&id=26E0E257BE82A39E%2127335&cid=26E0E257BE82A39E

затем запустите мою команду в командной строке:

Makecert -r -pe -n CN = "MycomputerCertificate" -b 01.01.2020 -e 22.12.2030 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localmachine -sky exchange -sp "Microsoft RSA SChannel Cryptographic Provider" -sy 12

Другие вопросы по тегам