Hoe te maken .PFX-bestand van certificaat en privésleutel?

Ik heb .pfx-bestand nodig om HTTPS op de website op IIS te installeren.

Ik heb twee afzonderlijke bestanden: certificaat (.cer of PEM) en privé-sleutel (.crt) Maar IIS accepteert alleen .PFX-bestanden.

Ik heb duidelijk geïnstalleerd certificaat en het is beschikbaar in certificaatbeheer (MMC), maar wanneer ik Certificate Export Wizard selecteer, kan ik geen PFX-formaat selecteren (het is grijs)

Zijn er gereedschap om dat te doen of C # voorbeelden van dat programmeerbaar?


Antwoord 1, Autoriteit 100%

U moet OpenSSL gebruiken.

openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt

Het sleutelbestand is slechts een tekstbestand met uw privésleutel erin.

Als u een rootca en tussencerts heeft, neemt u deze op met behulp van meerdere -inparams

openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt -in intermediate.crt -in rootca.crt

U kunt OpenSSL vanaf hier installeren: openssl


Antwoord 2, Autoriteit 6%

Als u op zoek bent naar een Windows GUI, bekijk dan Digicert. Ik heb dit net gebruikt en het was vrij eenvoudig.

In het kader van het SSL-tabblad heb ik het certificaat voor het eerst geïmporteerd. Nadat ik het certificaat heb geselecteerd, kon ik exporteren als PFX, zowel met als zonder een sleutelbestand.

https://www.digicert.com/util


Antwoord 3, Autoriteit 5%

Het Microsoft PVK2PFX-opdrachtregelprogramma lijkt de functionaliteit te hebben die u nodig hebt:

PVK2PFX (PVK2PFX.EXE) is een opdrachtregelopleiding kopieert openbare sleutel en particuliere sleutelinformatie in .SPC, .CER en .PVK-bestanden naar een Persoonsgegevens Exchange (.PFX) -bestand.
http://msdn.microsoft.com/en-us /bibliotheek/windows/hardware/ff550672(v=vs.85).aspx

Opmerking: als je een C#-oplossing nodig hebt/wilt/voorkeurt, kun je overwegen de http://www.bouncycastle.org te gebruiken. /api.


Antwoord 4, autoriteit 5%

Je hebt GEEN openssl of makecert of iets dergelijks nodig. U heeft ook niet de persoonlijke sleutel nodig die u van uw CA heeft gekregen. Ik kan bijna garanderen dat het probleem is dat je verwacht de sleutel- en cer-bestanden te kunnen gebruiken die door je CA worden geleverd, maar ze zijn niet gebaseerd op “de IIS-manier”. Ik ben zo moe van het zien van slechte en moeilijke informatie hier dat ik besloot om het onderwerp en de oplossing te bloggen. Als je je realiseert wat er aan de hand is en ziet hoe gemakkelijk het is, wil je me knuffelen 🙂

SSL-certificaten voor IIS met PFX voor eens en voor altijd – SSL en IIS uitgelegd – http://rainabba.blogspot.com/2014/03/ssl-certs-for-iis-with-pfx-once-and-for.html

Gebruik IIS “Servercertificaten” UI om “Certificaatverzoek” te genereren (de details van dit verzoek zijn buiten de reikwijdte van dit artikel, maar die details zijn van cruciaal belang). Dit geeft je een CSR geprezen voor IIS. U geeft die CSR vervolgens aan uw CA en vraag om een ​​certificaat. Dan neemt u het CER / CRT-bestand dat ze u geven, teruggaan naar IIS, “Complete certificaatverzoek” op dezelfde plaats die u het verzoek hebt gegenereerd. Het kan om een ​​.cer vragen en je hebt misschien een .crt. Ze zijn hetzelfde. Wijzig gewoon de extensie of gebruik de vervolgkeuzelijst . verlenging om uw .crt te selecteren. Geef nu een goede “Vriendelijke naam” (* .uourdomain.com, uwdomein.com, foo.yourdomain.com, enz ..) Dit is belangrijk! Dit moet overeenkomen met waar je de CSR opzet voor en wat je CA verstrekt. Als u om een ​​jokertekens heeft gevraagd, moet uw CA een jokerteken hebben goedgekeurd en gegenereerd en dat moet u hetzelfde gebruiken. Als uw CSR is gegenereerd voor foo.yourdomain.com, moet u in deze stap hetzelfde verstrekken.


Antwoord 5, Autoriteit 2%

Ik heb .pfx-bestand gemaakt van .key en .pem-bestanden.

Vind je deze openssl pkcs12 -inkey rootCA.key -in rootCA.pem -export -out rootCA.pfx


Antwoord 6

https://msdn.microsoft.com/en-us/library /ff699202.aspx

((relevante aanhalingstekens uit het artikel zijn hieronder))

Vervolgens moet u het .PFX-bestand maken dat u gebruikt om uw implementaties te ondertekenen. Open een opdrachtpromptvenster en typ de volgende opdracht:

PVK2PFX –pvk yourprivatekeyfile.pvk –spc yourcertfile.cer –pfx yourpfxfile.pfx –po yourpfxpassword

Waar:

  • pvk – yourprivateyfile.pvk is het privé-sleutelbestand dat u in stap 4 hebt gemaakt.
  • SPC – Yourcertfile.cer is het certificaatbestand dat u in stap 4 hebt gemaakt.
  • PFX – YEPFXFILE.PFX is de naam van het .pfx-bestand dat zal maken.
  • PO – YourPFXPassword is het wachtwoord dat u wilt toewijzen aan het .pfx-bestand. U wordt om dit wachtwoord gevraagd wanneer u het .pfx-bestand voor de eerste keer in een project in Visual Studio toevoegt.

(optioneel (en niet voor het OP, maar voor toekomstige lezers), kunt u het .cer- en .pvk-bestand helemaal opnieuw maken) (u zou dit voor het bovenstaande doen). OPMERKING De MM / DD / JJJJA zijn tijdelijke aanduidingen voor start- en einddatums. Zie MSDN-artikel voor volledige documentatie.

makecert -sv yourprivatekeyfile.pvk -n "CN=My Certificate Name" yourcertfile.cer -b mm/dd/yyyy -e mm/dd/yyyy -r

Antwoord 7

Dit is verreweg de gemakkelijkste manier om * .cer naar * .pfx-bestanden te converteren:

Download gewoon de draagbare certificaatconvertor van Digicert:
https://www.digicert.com/util /pfx-certificate-management-uttility-import-export-instructions.htm

Voer het uit, selecteer een bestand en ontvang uw * .pfx !!


Antwoord 8

U moet de MakeCert-tool gebruiken.

Open een opdrachtprompt als admin en typ het volgende:

makecert -sky exchange -r -n "CN=<CertificateName>" -pe -a sha1 -len 2048 -ss My "<CertificateName>.cer"

Waar <CertifcateName>= de naam van uw CERT om te maken.

Dan kunt u de module Certificate Manager voor de managementconsole openen door CERTMGR.MSC in het menu Start te typen, klikt u op Persoonlijk en GT; Certificaten & GT; en uw cert moet beschikbaar zijn.

Hier is een artikel.

https://azure.microsoft.com/documentation/ artikelen/cloud-services-certs-create/


Antwoord 9

Ik heb een link met uw vereiste.Combineer CRT- en KEY-bestanden in een PFX met OpenSSL

Uittreksels uit de bovenstaande link:

Eerst moeten we het root-CA-certificaat uit de bestaande halen
.crt-bestand, omdat we dit later nodig hebben. Dus open de .crt en klik op
op het tabblad Certificatiepad.

Klik op het bovenste certificaat (in dit geval VeriSign) en klik op Bekijken
Certificaat. Selecteer het tabblad Details en klik op Kopiëren naar bestand…

Selecteer Base-64 gecodeerd X.509 (.CER) certificaat Sla het op als rootca.cer
of iets dergelijks. Plaats het in dezelfde map als de andere bestanden.

Hernoem het van rootca.cer naar rootca.crt Nu zouden we 3 bestanden in moeten hebben
onze map van waaruit we een PFX-bestand kunnen maken.

Hier hebben we OpenSSL nodig. We kunnen het downloaden en installeren
op Windows
, of open gewoon terminal op OSX.

BEWERKEN:

  1. Er is een ondersteuningslink met stapsgewijze informatie over hoe u het certificaat kunt installeren.

  2. Na een succesvolle installatie exporteert u het certificaat, kiest u de indeling .pfxen neemt u de privésleutel op.

    Belangrijke opmerking:: Om het certificaat in .pfx-formaat te exporteren, moet u de stappen volgen op dezelfde machine waarop u het certificaat heeft aangevraagd.

  3. Het geïmporteerde bestand kan naar de server worden geüpload.


Antwoord 10

Als u zegt dat het certificaat beschikbaar is in MMC, is het dan beschikbaar onder “Huidige gebruiker” of “Lokale computer”? Ik heb ontdekt dat ik de privésleutel alleen kan exporteren als deze zich onder Lokale computer bevindt.

Je kunt de module voor Certificaten toevoegen aan MMC en kiezen voor welk account het certificaten moet beheren. Kies Lokale computer. Als uw certificaat er niet is, importeert u het door met de rechtermuisknop op de winkel te klikken en Alle taken > Importeren.

Navigeer nu naar uw geïmporteerde certificaat onder de lokale computerversie van de certificaatmodule. Klik met de rechtermuisknop op het certificaat en kies Alle taken > Exporteren. Op de tweede pagina van de exportwizard wordt gevraagd of u de persoonlijke sleutel wilt exporteren. Selecteer Ja. De PFX-optie is nu de enige die beschikbaar is (deze wordt grijs weergegeven als u nee selecteert en de optie om de privésleutel te exporteren niet beschikbaar is onder de huidige gebruikersaccount).

U wordt gevraagd een wachtwoord in te stellen voor het PFX-bestand en vervolgens de certificaatnaam in te stellen.


Antwoord 11

Ik had hetzelfde probleem. Mijn probleem was dat de computer die de eerste certificaataanvraag genereerde, was gecrasht voordat het uitgebreide SSL-validatieproces was voltooid. Ik moest een nieuwe privésleutel genereren en vervolgens het bijgewerkte certificaat importeren van de certificaatprovider. Als de privésleutel niet op uw computer bestaat, kunt u het certificaat niet exporteren als pfx. De optie Ze is grijs weergegeven.


Antwoord 12

Als u het certificaat niet als een PFX (inclusief de persoonlijke sleutel) kunt exporteren, komt dit in de meeste gevallen doordat MMC/IIS de privésleutel (die wordt gebruikt om de CSR te genereren) niet kan vinden of er geen toegang toe heeft. . Dit zijn de stappen die ik heb gevolgd om dit probleem op te lossen:

  • Voer MMC uit als beheerder
    • Genereer de CSR met MMC. Volg deze instructiesom het certificaat exporteerbaar te maken.
  • Zodra u het certificaat van de CA hebt ontvangen (crt + p7b), importeert u het (persoonlijke\certificaten en tussenliggende certificeringsinstantie\certificaten)
  • BELANGRIJK: Klik met de rechtermuisknop op uw nieuwe certificaat (Persoonlijk\Certificaten) Alle taken..Beheer privésleutel en wijs machtigingen toe aan uw account of Iedereen (risicovol!). U kunt teruggaan naar eerdere machtigingen zodra u klaar bent.
  • Klik nu met de rechtermuisknop op het certificaat en selecteer Alle taken..Exporteren, en u zou het certificaat inclusief de persoonlijke sleutel als een PFX-bestand moeten kunnen exporteren en u kunt het uploaden naar Azure!

Hopelijk helpt dit!

Other episodes