Donnerstag, 28. September 2017

[SSL] Ein SSL Zertifikat in andere Formate konvertieren leicht gemacht

Update: https://www.sslshopper.com/ssl-converter.html


Obiger Link kann als einfache alternative genutzt werden

--------------------------------------------

In Windows ist das Zertifikatsformat PKCS12 (*.pfx) am gängisten (IIS, Exchange)

Manchmal bekommt man ein zertifikat jedoch als *.key und *.crt Datei oder als einfachen Text

Hier zeige ich euch, wie Ihr die verschiednenen Formate ändern könnt


Wichtig zu wissen:
-PKCS7 (*.p7b / *.p7c) Beginnen immer mit "-----BEGIN PKCS7-----" im Text
-PKCS7 (*.p7b / *.p7c) Enthalten NIE einen Private Key
-PKCS7 (*.p7b / *.p7c) Kann das Zertifikat und die Chain enthalten

-PKCS12 (*.pfx / *.p12) Sind im Binärformat, kann nicht mit einem Texteditor angeschaut werden
-PKCS12 (*.pfx / *.p12) Kann das Zertifikat, die Chain und den Private Key enthalten

-PEM (*.pem / *.crt / *.cer / *.key) Beginnen immer mit "-----BEGIN CERTIFICATE------" im Text
-PEM (*.pem / *.crt / *.cer / *.key) Kann das Zertifikat, die Chain und den Private Key enthalten

-DER (*.cer / *.der) Sind im Binärformat, kann nicht mit einem Texteditor angeschaut werden
-DER (*.cer / *.der) Kann das Zertifikat, die Chain und den Private Key enthalten




Beispiel: Ein *.pfx  file aus einem *.key und *.crt generieren


1: CygWin installieren (https://cygwin.com/install.html) (Einfach weiter, OpenSSL ist standardmässig dabei) oder eine OpenSSL Binarie von hier: https://wiki.openssl.org/index.php/Binaries benutzen

2: Einfachheitshalber die beiden Files in den Installationsordner kopieren
(C:\cygwin64\home\%username%)

3: im Cygwin Terminal folgenden Befehl eingeben:


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

Danach zwei mal einen Private Key Passwort eingeben


Beispiel 2: Ein *.p12  file aus einem *.key und *.crt generieren

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



WEITERE OPENSSL COMMAND-SWITCHE
-name IrgendEinName
-CAfile domain-chain.pem
-caname CACertName
-password pass:AAAAA


WEITERE OPEN SSL BEISPIELE:

OpenSSL Convert PEM
———————————————————————————————————
Convert PEM to DER

openssl x509 -outform der -in certificate.pem -out certificate.der

Convert PEM to P7B

openssl crl2pkcs7 -nocrl -certfile certificate.cer -out certificate.p7b -certfile CACert.cer

Convert PEM to PFX

openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt


OpenSSL Convert DER
———————————————————————————————————
Convert DER to PEM

openssl x509 -inform der -in certificate.cer -out certificate.pem

OpenSSL Convert P7B
———————————————————————————————————
Convert P7B to PEM

openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer

Convert P7B to PFX

openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer

openssl pkcs12 -export -in certificate.cer -inkey privateKey.key -out certificate.pfx -certfile CACert.cer

OpenSSL Convert PFX
———————————————————————————————————
Convert PFX to PEM

openssl pkcs12 -in certificate.pfx -out certificate.cer -nodes

Anmerkung: Bei der kovertierung wird alles in eine Datei konvertiert. Öffnet die *.cer Datei in einem Editor und per Copy Paste kann das Certifikat, CACert und der PrivateKey in eine eignene Datei gespeichert werden (certificate.cer / CACert.cer / privateKey.key)

 ----------------------------------

Anmerkung ABACUS:
openssl pkcs12 -in .\certificate.pfx -nocerts -out .\abasioux.key -nodes
openssl pkcs12 -in .\certificate.pfx -nokeys -out .\abasioux.crt

Keine Kommentare:

Kommentar veröffentlichen