Erstellen einer Certificate Signing Request (CSR) mit OpenSSL für Benutzerzertifikate (S/MIME, Document Signing)
Einführung
Wenn Sie ein Benutzerzertifikat bestellen, werden Sie nach eine CSR gefragt. CSR steht für Certificate Signing Request, also ein Antrag auf Ausstellung eines SSL-Zertifikats. Neben der CSR benötigen Sie einen geheime Schlüsseldatei, welche wie der Name vermuten lässt, ausschließlich bei Ihnen verbleibt und sicher vor dem Zugriff durch Dritte geschützt werden muss.
In dieser Anleitung beschreiben wir wie Sie eine CSR mit Hilfe der verlinkten Open-Source Anwendung OpenSSL erstellen. OpenSSL ist für zahlreiche Betriebssysteme verfügbar und in der Regel auf Linux Systemen vorinstalliert.
Installation von OpenSSL
Sollte OpenSSL noch nicht installiert sein, können Sie die Installation wie folgt durchführen:
Ubuntu
$ apt-get install openssl
RHEL / Centos
$ yum install openssl
Windows 10
Installieren Sie das Linux Subsystem unter Windows 10. Folgen Sie hierzu dem verlinkten Microsoft Artikel.
Benötigte Informationen
Sie benötigen die folgenden Informationen, welche sich auf den Betreiber des Internet-Angebots beziehen:
Name | Bezeichnung | Beschreibung |
C | Country | Ihr Land als 2-Buchstabencode nach ISO31661-1. Zum Beispiel DE für Deutschland. |
ST | State | Das Bundesland, zum Beispiel Hessen, Bayern, ... |
L | Locality | Die Stadt, zum Beispiel, Essen, Duesseldorf, Bremen, ... |
O | Organization | Der vollständige Firmenname inkl. Rechtsform. Privatpersonen ohne Firma können Ihren Namen angeben (vgl. Common Name). |
OU | Organizational Unit | Name der zuständigen Abteilung. Diese Angabe ist optional. |
CN | Common Name | Der Name, auf welchen das Zertifikat ausgestellt weden soll. Zum Beispiel Max Mustermann. Möchten Sie eine CSR für einen anderen Zertifikatstyp (z.B. SSL-Zertifikate) erstellen, folgen Sie den Links unter Verwandte Artikel. |
Achten Sie insbesondere bei dem Common Name (CN) auf die richtige Schreibweise. Die Informationen können in der Regel nicht mehr korrigiert werden, nachdem das Zertifikat ausgestellt wurde.
Hinweis
Erstellen der Schlüsseldatei
Führen Sie den folgenden Befehl aus um eine RSA Schlüsseldatei zu generieren:
$ openssl genrsa -out meine-schlüsseldatei.key 2048
Die 2048 beschreibt hierbei die Länge des Schlüssel in bit.
Erstellen der Certificate Signing Request
Führen Sie folgenden Befehl zum Erstellen der CSR aus:
$ openssl req -new -sha256 -key meine-schlüsseldatei.key -out meine-csr.pem
und Sie werden nach den oben aufgeführten Angaben gefragt. Alternativ könnne Sie diese auch gleich auf der Kommandozeile mit angeben. Beispiel:
$ openssl req -new -sha256 -key meine-schlüsseldatei.key -out meine-csr.pem -subj "/C=DE/ST=Hessen/L=Frankfurt am Main/O=IDNT Europe GmbH/CN=Max Mustermann"
Sie werden anschließend von OpenSSL zur Eingabe eine Passworts aufgefordert. ...
Überprüfen der CSR
Mit folgendem Befehl können Sie sich die Informationen nochmals ausgeben lassen:
$ openssl req -noout -text -in meine-csr.pem
Achten Sie insbesondere auf die Angaben hinter der Ausgabe Subject:
Übermitteln an die Zertifizierungsstelle (CA)
Geben Sie nun den Inhalt der CSR Datei aus um diesen per Copy + Paste in die Eingabemaske der Zertifizierungstelle zu übertragen:
$ cat meine-csr.pem