Certificate Signing Request (CSR) erstellen

In dieser Anleitung werden die notwendigen Schritte gezeigt, um eine Zertifikatsignierungsanforderung (Certificate Signing Request - CSR) zu erstellen. Diese wird benötigt, um ein Serverzertifikat zu beantragen. Für Windows-Server empfehlen wir die Benutzung des Assistenten (Internet Service Manager) für die Generierung des CSRs.

Schritt 1: Herunterladen der luh-ca.cnf

Um den CSR zu vereinfachen, laden Sie die Konfigurationsdatei luh-ca.cnf herunter. Diese enthält bereits einige angepasste Parameter, die für Serverzertifikate der LUH notwendig sind.

Schritt 2: Anpassen der luh-ca.cnf (falls es mehrere Namen gibt)

Falls Sie zusätzliche Namen (Subject Alternative Names) im Zertifikat angeben wollen, müssen Sie die luh-ca.cnf anpassen. Falls Sie das Zertifikat nur auf einen Namen ausstellen wollen, können Sie diesen Schritt überspringen. Folgende Änderungen an der Konfigurationsdatei sind für mehrere Namen notwendig:

Einkommentieren ("#" entfernen) des Parameters subjectAltName:

subjectAltName = @alt_names

Eintragen der gewünschten Namen in den Parametern DNS.1, DNS.2, …:

DNS.1 = example1.luis.uni-hannover.de
DNS.2 = example2.luis.uni-hannover.de

Schritt 3: Erstellen des CSR

Nun wird der CSR mit einem openssl-Befehl erstellt. Die grundlegend erforderlichen Angaben (inkl. des Common Names) werden nach Ausführen des Befehls erfragt. Sie müssen sich ein Passwort zum Schutz des privaten Schlüssels überlegen. Da Sie die luh-ca.cnf verwenden, sind einige Parameter schon vorausgefüllt. Somit können Sie alle Fragen (bis auf den Common Name und die Passwort-Abfrage) einfach mit "Enter" bestätigen. Der Befehl und eine beispielhafte Ausgabe finden Sie hier:

$ openssl req -config luh-ca.cnf -new -keyout server-key.pem -out server-req.pem
Generating a RSA private key
..........................................................................................................................+++++
........................+++++
writing new private key to 'server-key.pem'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (=DE) [DE]:
State or Province Name (=Niedersachsen) [Niedersachsen]:
Locality Name (=Hannover) [Hannover]:
Organization Name (=Leibniz Universitaet Hannover) [Leibniz Universitaet Hannover]:
Common Name (Servername FQDN) []:example.luis.uni-hannover.de

Schritt 4: Überprüfen des CSR

Den erstellten CSR können Sie auf Richtigkeit überprüfen. Der Befehl und eine beispielhafte Ausgabe finden Sie hier:

$ openssl req -text -noout -verify -in server-req.pem -inform PEM
verify OK
Certificate Request:
    Data:
        Version: 1 (0x0)
        Subject: C = DE, ST = Niedersachsen, L = Hannover, O = Leibniz Universitaet Hannover, CN = example.luis.uni-hannover.de
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                RSA Public-Key: (2048 bit)
                Modulus:
                    00:c9:71:f7:b5:7b:ac:33:5b:ad:96:71:d7:2a:21:
[…]
                    97:9f
                Exponent: 65537 (0x10001)
        Attributes:
        Requested Extensions:
            X509v3 Basic Constraints: 
                CA:FALSE
            X509v3 Key Usage: 
                Digital Signature, Non Repudiation, Key Encipherment
    Signature Algorithm: sha256WithRSAEncryption
         76:a6:ca:1e:76:35:f9:3d:5b:e0:7f:a6:66:bc:41:ce:85:99:
[…]
         79:10:de:37

Nun können Sie mit der Beantragung des Serverzertifikats (Schritt 2) fortfahren. Die Datei server-req.pem ist die dafür benötigte Request-Datei. Die Datei server-key.pem ist ihr privater Schlüssel, den Sie später zusammen mit dem Zertifikat (was Sie ganz am Ende erhalten) auf den Server einpflegen können.

KONTAKT

Zertifikatsteam des LUIS
Zertifikatsteam des LUIS