Zertifikate - Programme und Tools

 # openssl x509 -noout -text -in <zertifikatsname.crt>
 # openssl x509 -noout -issuer -in <zertifikatsname.crt>
 # openssl x509 -noout -subject -in <zertifikatsname.crt>
 # openssl x509 -noout -dates -in <zertifikatsname.crt>
 # openssl x509 -noout -issuer -subject -dates -in <zertifikatsname.crt>
 # openssl x509 -noout -hash -in <zertifikatsname.crt>
 # openssl x509 -noout -fingerprint -in <zertifikatsname.crt>
 # openssl verify -CApath /etc/pki/tls/certs -verbose <zertifikatsname.crt>
 # openssl s_client -CApath /etc/pki/tls/certs -connect localhost:636 -showcerts
 # openssl rsa -in <zertifikatsname.key> -out <neueskeyfile.key>
 # openssl rsa -des3 -in <zertifikatsname.key> -out <neueskeyfile.key>
 # openssl genrsa -out <zertifikatsname.key> 4096
 # openssl rsa -des3 -in <zertifikatsname.key> -out <zertifikatsname.key.sec>
 # openssl req -new -key <zertifikatsname.key> -out <zertifikatsname.csr>

Möchte man SHA256 als Signatur Hash verwenden gibt man noch die Option -sha256 beim Generieren des Certificate Signing Request an.

 # openssl req -new -sha256 -key <zertifikatsname.key> -out <zertifikatsname.csr>
 # openssl req -noout -text -in <request.csr>
 # openssl x509 -outform der -in certificate.pem -out certificate.der
 # openssl crl2pkcs7 -nocrl -certfile certificate.cer -out certificate.p7b -certfile CACert.cer
 # openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt
 # openssl x509 -inform der -in certificate.cer -out certificate.pem
 # openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
 # openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer

oder

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

Möchte man aus einem Clientzertifikat, welches mit dem Browser Firefox erstellt wurde oder aus einem ISS PFX-Container den Schlüssel extrahieren, gehen wir wie folgt vor:

  1. Key Exportieren:
     $ openssl pkcs12 -in serverzertifikat.p12 -nocerts -out server.key
    Enter Import Password:
    MAC verified OK
    Enter PEM pass phrase:
    Verifying - Enter PEM pass phrase:
  2. Keydatei normalisieren:
    Beim exportierten Schlüssel, sind noch Zusatzinformationen enthalten, die wir nun noch entfernen.
     $ vim server.key
    Bag Attributes
        friendlyName: Michael Nausch's Root CA ID
        localKeyID: 8E D8 F2 19 82 E6 6D 14 08 19 67 0B B6 70 33 C4 24 39 20 85
    Key Attributes: <No Attributes>
    -----BEGIN ENCRYPTED PRIVATE KEY-----
    MIIFDjBABgBur$1ck1$T31NV011IDI07BkiG9w0BBQwwDgQI9KkTgM0blTECAggA
    MBQGCCqGSIb3DQMHBAj/FsaQiJyUjASCBMjaR8
    ...

    Hier entfernen wir alles vor der ersten Zeile, so daß die erste Zeile den String —–BEGIN ENCRYPTED PRIVATE KEY—– enthält.

    -----BEGIN ENCRYPTED PRIVATE KEY-----
    MIIFDjBABgBur$1ck1$T31NV011IDI07BkiG9w0BBQwwDgQI9KkTgM0blTECAggA
    MBQGCCqGSIb3DQMHBAj/FsaQiJyUjASCBMjaR8
    ...

Möchte man aus einem Clientzertifikat, welches mit dem Browser Firefox erstellt wurde oder aus einem ISS PFX-Container das Zertifikat selbst, gehen wir wie folgt vor:

  1. Zertifikat Exportieren:
     $ openssl pkcs12 -in codesigning_cert.p12 -clcerts -nokeys -out server.crt
    Enter Import Password:
    MAC verified OK 
  2. Zertifikat normalisieren:
    Beim exportierten Zertifikat, sind noch Zusatzinformationen enthalten, die wir nun noch entfernen.
    Bag Attributes
        friendlyName: Michael Nausch's Root CA ID
        localKeyID: 8E D8 F2 19 14 08 19 67 49 0B B6 70 33 C4 24 39 20 85
    subject=/CN=Michael Nausch/emailAddress=codesigning@nausch.org
    issuer=/O=Root CA/OU=http://www.cacert.org/CN=CA Cert Signing Authority/emailAddress=support@cacert.org
    -----BEGIN CERTIFICATE-----
    MIIFoDCCA4igAwIBAgIDDTYBMA0GCSqGSIb3DQEBBQUAMHkxEDAO7gNVBAoTB1Jv
    b3QgQ0ExHjAcBgNVBAsT4Eh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAGA1UEAxMZ
    Q0EgQ2VydCBTaWduaW5
    ...
     $ vim server.crt
    -----BEGIN CERTIFICATE-----
    MIIFoDCCA4igAwIBAgIDDTYBMA0GCSqGSIb3DQEBBQUAMHkxEDAO7gNVBAoTB1Jv
    b3QgQ0ExHjAcBgNVBAsT4Eh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAGA1UEAxMZ
    Q0EgQ2VydCBTaWduaW5
    ...

Links

Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
  • centos/certs.txt
  • Zuletzt geändert: 20.04.2018 10:24.
  • (Externe Bearbeitung)