CSR erstellen: CSR-Generator mit SAN

CSR erstellen im Browser: Schlüssel wählen, Namen und alternative Namen eintragen und einen signierten Certificate Signing Request als PEM erhalten, dazu den passenden OpenSSL-Befehl.

–

 

CSR (PEM, PKCS#10)
Privater Schlüssel (PKCS#8, PEM) – geheim halten
Gegenprüfen mit OpenSSL

Alles läuft in Ihrem Browser, Eingaben werden nicht übertragen. Nur zum Lernen und Testen: Verwenden Sie für echte Geheimnisse und Produktivsysteme geprüfte Werkzeuge Ihrer Organisation.

CSR-Generator: so entsteht der Antrag

Mit diesem Werkzeug können Sie einen CSR erstellen, also einen Certificate Signing Request erstellen, wie ihn der Standard PKCS#10 (RFC 2986) beschreibt. Der CSR-Generator erzeugt dazu im Browser per WebCrypto ein Schlüsselpaar, baut den Antrag selbst in ASN.1 nach DER zusammen und signiert ihn mit dem privaten Schlüssel. Heraus kommen zwei PEM-Dateien: der Antrag mit -----BEGIN CERTIFICATE REQUEST-----, den Sie bei der Zertifizierungsstelle einreichen, und der private Schlüssel, der auf Ihren Server gehört und nie weitergegeben wird.

Wichtig ist das Feld Subject Alternative Name (SAN). Browser prüfen seit Jahren nur noch diese alternativen Namen, nicht den Common Name. Tragen Sie deshalb jede Domain ein, unter der der Dienst erreichbar sein soll, auch die Variante mit und ohne www. IP-Adressen (IPv4 und IPv6), E-Mail-Adressen und URIs werden automatisch erkannt; Sie können sie auch mit IP:, email: oder URI: kennzeichnen. Domains mit Umlauten tragen Sie in Punycode ein (xn--…).

Das Ergebnis lässt sich mit openssl req gegenprüfen: openssl req -in anfrage.csr -noout -text -verify zeigt alle Felder und bestätigt die Signatur. Den Antrag können Sie außerdem mit dem CSR-Dekoder kontrollieren. Für Produktivsysteme ist es üblich, Schlüssel und CSR direkt auf dem Server zu erzeugen, damit der private Schlüssel die Maschine nie verlässt; der passende OpenSSL-Befehl steht unter dem Ergebnis. Für Tests, Schulungen und interne Zertifizierungsstellen ist der Browser-Weg bequem und ohne Installation nutzbar.

Anleitung: CSR erstellen in 5 Schritten

  1. Unter „Schlüssel“ RSA oder ECDSA wählen; der Schlüssel wird sofort im Browser erzeugt.
  2. Common Name (CN), Organisation, Ort und Land (C) eintragen.
  3. Unter „Alternative Namen (SAN)“ alle Domains und IP-Adressen eintragen, eine je Zeile.
  4. CSR und privaten Schlüssel mit „Kopieren“ oder „CSR herunterladen“ und „Schlüssel herunterladen“ sichern.
  5. Den CSR mit dem angezeigten Befehl openssl req -in anfrage.csr -noout -text -verify gegenprüfen und bei der Zertifizierungsstelle einreichen.

Typische Anwendungsfälle

  • Ein Zertifikat für eine interne Webanwendung bei der hauseigenen CA beantragen, ohne OpenSSL auf dem Rechner zu haben.
  • Einen CSR mit mehreren Domains und IP-Adressen vorbereiten, etwa für ein NAS, einen Router oder eine Testumgebung.
  • Im Unterricht oder bei der Einarbeitung zeigen, wie ein PKCS#10-Antrag aufgebaut ist und was die CA daraus übernimmt.
  • Einen Vergleichs-CSR erzeugen, um Fehler in einem Skript mit openssl req zu finden.
Fragen

Häufige Fragen

Welche Angaben braucht ein CSR mindestens?

Einen Common Name oder mindestens einen alternativen Namen (SAN). Für domain-validierte Zertifikate genügt das. Organisation, Ort und Land sind nur bei organisationsvalidierten Zertifikaten nötig und werden dort von der Zertifizierungsstelle geprüft.

RSA oder ECDSA für den CSR?

ECDSA P-256 ist kürzer und schneller und wird von allen aktuellen Browsern und Servern unterstützt. RSA mit 2048 oder 3072 Bit wählen Sie, wenn sehr alte Clients oder Geräte mitspielen müssen.

Wird mein privater Schlüssel irgendwo gespeichert?

Nein. Schlüssel und CSR entstehen nur im Arbeitsspeicher Ihres Browsers. Laden Sie den Schlüssel herunter, bevor Sie die Seite schließen; danach ist er weg.

Was ist der Unterschied zwischen CSR erstellen und Zertifikat erstellen?

Der CSR ist nur der Antrag. Erst die Zertifizierungsstelle signiert ihn und macht daraus ein Zertifikat. Für reine Testzwecke können Sie stattdessen ein selbstsigniertes Zertifikat erzeugen.

Kann ich einen vorhandenen privaten Schlüssel für den CSR verwenden?

Nicht in diesem Werkzeug, absichtlich: Produktive Schlüssel gehören nicht in eine Webseite. Mit vorhandenem Schlüssel nutzen Sie openssl req -new -key privat.key -out anfrage.csr.

Muss im CSR das Land als DE stehen?

Das Feld C ist optional. Wenn Sie es ausfüllen, muss es ein zweistelliger Ländercode nach ISO 3166 sein, zum Beispiel DE, AT oder CH. Domain-validierte Zertifikate übernehmen meist ohnehin nur den CN und die SAN.

Weitere Werkzeuge

Das könnte auch helfen

Alle 558 Werkzeuge