Zertifikat Request (CSR) erstellen – Anleitung

Problem

Wie erstelle ich ein CSR für einen Apache Server?
Lösung

Zur Erzeugung des CSR und der privaten Schlüssel folgen Sie diesen Anweisungen.

WAS WIRD BENÖTIGT ?

Um den Schlüssel und CSR zu generieren benötigt man das Dienstprogramm „openssl“. Dieses Programm wird mit dem OpenSSL-Paket mit installiert und befindet sich ist in der Regel in /usr/local/ssl/bin. Wenn Sie es an einer anderer Stelle installiert haben passen Sie die Pfade entsprechend an.

WAS MUSS MAN SICH GENAU ÜBERLEGEN ?

Zuerst müssen Sie sich auf einen Fully Qualified Domain Name (FQDN) der Website, für die Sie ein Zertifikat anfordern, festlegen.

Wenn Sie auf Ihre Website durch

  • https://www.yourdomain-example.com
zugreifen wollen,
  • dann ist der FQDN Ihrer Website www.yourdomain-example.com
  • und der Common Name auch www.yourdomain-example.com.
SCHRITT 1 – Den Key erzeugen
Generieren Sie den Schlüssel mit dem folgenden Befehl:
openssl genrsa -des3 -out www.yourdomain-example.com.key 2048

HINWEIS: Eine Schlüssellänge von 1024 Bit ist die Standardeinstellung, Thawte empfiehlt aber die Verwendung eines 2048-Bit-Schlüssel.

Wird ein  Zertifikat mit einer Gültigkeitsdauer über 31 Dezember 2013 benötigt, so muss die Schlüssellänge 2048 Bit betragen.

Dieser Befehl erzeugt 2048 bit RSA Private Key und speichert es in der Datei www.yourdomain-example.com.key.

Passphrase

Sie werden nach einer Passphrase gefragt.

Benutzen Sie eine Passphase immer, wenn Sie nicht sicherstellen können, dass

  • der Server absolut sicher ist
  • Sie alle Berechtigungen sorgfältig gesetzt haben
  • und dass nur Sie einen Zugriff auf den Schlüssel haben.

Benutzen Sie eine sichere Passphrase, an die Sie sich erinnern können. Das Zertifikat ist ohne eine installierte Passphrase vollkommen nutzlos sein. Wenn Sie sich gegen eine Passphrase entscheiden, lassen Sie die -des3 Option weg .Lassen Sie diese Option auch weg, wenn Sie Apache auf Windows ausführen, da sie unter Windows nicht funktioniert.

Sichern Sie Ihre www.yourdomain-example.com.key Datei und notieren Sie die Passphrase. Wenn Sie diese Passphrase verlieren, müssen Sie ein neues Zertifikat erwerben.

Wenn Sie ein Extended Validation Zertifikat anfordern, stellen Sie sicher, dass Ihre Schlüssellänge 2048 Bit beträgt.

SCHRITT 2 – DEN EIGENTLICHEN CSR GENERIEREN

Generieren Sie das CSR mit dem folgenden Befehl:

openssl req -new -key www.yourdomain-example.com.key -out www.yourdomain-example.com.csr

Dieser Befehl fragt Sie nach den X.509-Attributen des Zertifikats. Geben Sie den Namen www.yourdomain-example.com, wenn Sie den Common Name eingeben sollen.

Geben Sie hier nicht Ihren persönlichen Namen ein.  Sie wünschen ein Zertifikat für einen Webserver und der Common Name muss dem FQDN Ihrer Website entsprechen.

SCHRITT 3 – BEIDE DATEIN LIEGEN VOR – WAS NUN ?

Bevor der CSR an die CA weitergegeben wird sollte man ihn auf jeden Fall testen und die Einstellungen überprüfen.

openssl req -noout -text -in www.yourdomain-example.com.csr

Auch den Key kann man überprüfen.

openssl rsa -noout -text -in www.yourdomain-example.com.key

 

Sie haben nun einen RSA Private Key in www.yourdomain-example.com.key und ein Certificate Signing Request in www.yourdomain-example.com.csr erstellt.

  1. Die Datei www.yourdomain-example.com.key ist Ihr geheimer Schlüssel. Dieser muss entsprechend den Anweisungen installiert werden, die mit Ihrem Zertifikat mitkommen, sobald er ausgestellt wurde.
  2. Die Datei www.yourdomain-example.com.csr ist Ihre CSR, und die wichtigen Bit sieht etwa so aus  :

—– BEGIN CERTIFICATE REQUEST —–
Code
—– END CERTIFICATE REQUEST —–

Den Inhalt der www.yourdomain-example.com.csr ist der eigentlichen CSR, den Sie jetzt in das entsprechende Online-Formular bei Thawte einfügen oder an eine andere CA weiterleiten.

Bitte beachten Sie:

Wenn Sie einen privaten Schlüssels mit der Passphrase generiert haben, müssen Sie die gleiche Passphrase nach dem Neustart des Servers eingeben.