Eigene Zertifikate erstellen (OpenSSL unter Windows/Linux) - LSM 3.6 SP1 Business + Prof.

In diesem Kapitel werden beispielhaft alle Dateien erstellt, die benötigt werden, um die Kommunikation zum RouterNode 3 mit eigenen Zertifikaten abzusichern.

Im Beispiel wird ein fiktiver Firmenname verwendet ("OpenAllDoors"). Passen Sie ggfs. Dateinamen, Konfigurationsdateien und Befehle an Ihre Situation an.

Beachten Sie:

  • Unterstützter Schlüsseltyp: prime256v1: X9.62/SECG-Kurve über einem 256-Bit-Primkörper
  • Zertifikat und Schlüssel müssen im DER-Format hochgeladen werden.
  • Die Zertifikatsdateien im DER-Format dürfen maximal 768 Byte groß sein. Ihre Angaben zu Ihrem Unternehmen in den Konfigurationsdateien beeinflussen die Größe der DER-Dateien.
  • Das selbst signierte CA-Gerätezertifikat (CustomDeviceCA.crt) muss auf dem Client (Computer) installiert werden, um das Gerätezertifikat des RouterNode 3 verifizieren zu können. Es ist im PEM-Format und muss nicht umgewandelt werden.
  • Das selbst signierte CA-Clientzertifikat (CustomClientCA.crt) ist optional, SimonsVoss empfiehlt aber, auch dieses Zertifikat auf dem Client zu installieren. Andernfalls kann der Client die Zertifikate nicht vollständig verifizieren und zeigt eine Warnung an.
  • Für das Hinzufügen zum Windows-Zertifikatsspeicher müssen das Client-Zertifikat und der Schlüssel in eine PFX-Datei gepackt werden.

    Diese Beschreibung ist ausschließlich als Beispiel zu verstehen. SimonsVoss kann Sie bei der Erstellung der Zertifikate nicht unterstützen. Bitte kontaktieren Sie bei Fragen Ihre IT-Abteilung.

    OpenSSL auf Windows-Betriebssystemen (Win64 OpenSSL Command Prompt)

    1. OpenSSL 4.0 oder neuer installiert.
    2. OpenSSL-Terminal geöffnet.
    1. Erstellen Sie den privaten Schlüssel für das selbst signierte CA-Gerätezertifikat:
      openssl ecparam -out customdeviceca.key -name prime256v1 -genkey
    2. Erstellen Sie eine Konfigurationsdatei namens device_ca.cnf (Inhalt siehe device_ca.cnf).
    3. Erstellen Sie das selbst signierte CA-Gerätezertifikat:
      openssl req -new -x509 -sha256 -days 3650 -key customdeviceca.key -out CustomDeviceCA.crt -config device_ca.cnf -extensions v3_ca
    4. Erstellen Sie den privaten Schlüssel für das Gerätezertifikat:
      openssl ecparam -out customdevice.key -name prime256v1 -genkey
    5. Erstellen Sie eine Konfigurationsdatei namens device.cnf (Inhalt siehe device.cnf).
    6. Erstellen Sie eine Signierungsanforderung für das Gerätezertifikat:
      openssl req -new -sha256 -key customdevice.key -out customdevice.csr -config device.cnf
    7. Erstellen Sie eine Konfigurationsdatei namens device_ext.cnf (Inhalt siehe device_ext.cnf).
    8. Erstellen Sie das CA-signierte Zertifikat:
      openssl.exe x509 -req -sha256 -days 3650 -in customdevice.csr -CA CustomDeviceCA.crt -CAkey customdeviceca.key -out CustomDevice.crt -extensions v3_req -extfile device_ext.cnf
    9. Wandeln Sie den Schlüssel in das DER-Format um:
      openssl ec -inform PEM -in customdevice.key -outform DER -out customdevice_key.der
    10. Wandeln Sie das Zertifikat in das DER-Format um:
      openssl x509 -inform PEM -in CustomDevice.crt -outform DER -out customdevice_crt.der
    11. Erstellen Sie den privaten Schlüssel für das selbst signierte Client-CA-Zertifikat:
      openssl ecparam -out customclientca.key -name prime256v1 -genkey
    12. Erstellen Sie eine Konfigurationsdatei namens client_ca.cnf (Inhalt siehe client_ca.cnf).
    13. Erstellen Sie das selbst signierte Client-CA-Zertifikat:
      openssl req -new -x509 -sha256 -days 3650 -key customclientca.key -out CustomClientCA.crt -config client_ca.cnf -extensions v3_ca
    14. Wandeln Sie das selbst signierte Client-CA-Zertifikat in das DER-Format um:
      openssl x509 -inform PEM -in CustomClientCA.crt -outform DER -out customclientca_crt.der
    15. Erzeugen Sie den privaten Schlüssel für das Client-Zertifikat:
      openssl ecparam -out customclient.key -name prime256v1 -genkey
    16. Erstellen Sie eine Konfigurationsdatei namens client.cnf (Inhalt siehe client.cnf).
    17. Erstellen Sie eine Signierungsanforderung für das Client-Zertifikat:
      openssl req -new -sha256 -key customclient.key -out customclient.csr -config client.cnf
    18. Erstellen Sie eine Konfigurationsdatei namens client_ext.cnf (Inhalt siehe client_ext.cnf).
    19. Erstellen Sie das CA-signierte Clientzertifikat:
      openssl.exe x509 -req -sha256 -days 3650 -in customclient.csr -CA CustomClientCA.crt -CAkey customclientca.key -out CustomClient.crt -extensions v3_req -extfile client_ext.cnf
    20. Wandeln Sie das Client-Zertifikat und den Schlüssel in eine PFX-Datei um:
      openssl pkcs12 -export -inkey customclient.key -in CustomClient.crt -out CustomClient.pfx
    21. HINWEIS

      notice

      Export-Passwort

      Die PFX-Datei enthält den vertraulichen privaten Schlüssel customclient.key. OpenSSL verlangt deshalb beim Erstellen der PFX-Datei ein Passwort. Sie müssen dieses Passwort eingeben, wenn Sie mit der PFX-Datei die Zertifikate zu Windows hinzufügen wollen.

    Sie sollten folgende Dateien erzeugt haben:

    OpenSSL auf Linux-Betriebssystemen

    1. OpenSSL 4.0 oder neuer installiert.
    2. OpenSSL-Terminal geöffnet.
    1. Erstellen Sie den privaten Schlüssel für das selbst signierte CA-Gerätezertifikat:
      openssl ecparam -out customdeviceca.key -name prime256v1 -genkey
    2. Erstellen Sie eine Konfigurationsdatei namens device_ca.cnf (Inhalt siehe device_ca.cnf).
    3. Erstellen Sie das selbst signierte CA-Gerätezertifikat:
      openssl req -new -x509 -sha256 -days 3650 -key customdeviceca.key -out CustomDeviceCA.crt -config device_ca.cnf -extensions v3_ca
    4. Erstellen Sie den privaten Schlüssel für das Gerätezertifikat:
      openssl ecparam -out customdevice.key -name prime256v1 -genkey
    5. Erstellen Sie eine Konfigurationsdatei namens device.cnf (Inhalt siehe device.cnf).
    6. Erstellen Sie eine Signierungsanforderung für das Gerätezertifikat:
      openssl req -new -sha256 -key customdevice.key -out customdevice.csr -config device.cnf
    7. Erstellen Sie das CA-signierte Zertifikat:
      openssl x509 -req -sha256 -days 3650 -in customdevice.csr -CA CustomDeviceCA.crt -CAkey customdeviceca.key -out CustomDevice.crt -extfile <(printf "[v3_req]\\nsubjectAltName = @alt_names\\nbasicConstraints = CA:FALSE\\nsubjectKeyIdentifier = hash\\nauthorityKeyIdentifier = keyid\\nkeyUsage = digitalSignature,keyAgreement\\nextendedKeyUsage = serverAuth\\n[alt_names]\\nDNS.1 = *.local") -extensions v3_req
    8. Wandeln Sie den Schlüssel in das DER-Format um:
      openssl ec -inform PEM -in customdevice.key -outform DER -out customdevice_key.der
    9. Wandeln Sie das Zertifikat in das DER-Format um:
      openssl x509 -inform PEM -in CustomDevice.crt -outform DER -out customdevice_crt.der
    10. Erstellen Sie den privaten Schlüssel für das selbst signierte Client-CA-Zertifikat:
      openssl ecparam -out customclientca.key -name prime256v1 -genkey
    11. Erstellen Sie eine Konfigurationsdatei namens client_ca.cnf (Inhalt siehe client_ca.cnf).
    12. Erstellen Sie das selbst signierte Client-CA-Zertifikat:
      openssl req -new -x509 -sha256 -days 3650 -key customclientca.key -out CustomClientCA.crt -config client_ca.cnf -extensions v3_ca
    13. Wandeln Sie das selbst signierte Client-CA-Zertifikat in das DER-Format um:
      openssl x509 -inform PEM -in CustomClientCA.crt -outform DER -out customclientca_crt.der
    14. Erzeugen Sie den privaten Schlüssel für das Client-Zertifikat:
      openssl ecparam -out customclient.key -name prime256v1 -genkey
    15. Erstellen Sie eine Konfigurationsdatei namens client.cnf (Inhalt siehe client.cnf).
    16. Erstellen Sie eine Signierungsanforderung für das Client-Zertifikat:
      openssl req -new -sha256 -key customclient.key -out customclient.csr -config client.cnf
    17. Erstellen Sie das CA-signierte Clientzertifikat:
      openssl x509 -req -sha256 -days 3650 -in customclient.csr -CA CustomClientCA.crt -CAkey customclientca.key -out CustomClient.crt -extfile <(printf "[v3_req]\\nbasicConstraints = CA:FALSE\\nsubjectKeyIdentifier = hash\\nauthorityKeyIdentifier = keyid\\nkeyUsage = digitalSignature\\nextendedKeyUsage = clientAuth") -extensions v3_req
    18. Wandeln Sie das Client-Zertifikat und den Schlüssel in eine PFX-Datei um:
      openssl pkcs12 -export -inkey customclient.key -in CustomClient.crt -out CustomClient.pfx
    19. HINWEIS

      notice

      Export-Passwort

      Die PFX-Datei enthält den vertraulichen privaten Schlüssel customclient.key. OpenSSL verlangt deshalb beim Erstellen der PFX-Datei ein Passwort. Sie müssen dieses Passwort eingeben, wenn Sie mit der PFX-Datei die Zertifikate zu Windows hinzufügen wollen.