Wie erstelle ich einen CSR-Schlüssel auf meinem eigenen Server?

Auf einem eigenen Server können Sie mit OpenSSL einen privaten Schlüssel und eine Zertifizierungsanforderung (CSR) erstellen. Den CSR benötigen Sie, um ein SSL-Zertifikat bei einer Zertifizierungsstelle zu beantragen.

Warnung: Der private Schlüssel darf nicht weitergegeben werden. Bewahren Sie die Datei sicher auf. Ohne den passenden privaten Schlüssel kann das ausgestellte SSL-Zertifikat nicht korrekt verwendet werden.

Voraussetzungen

  • Sie haben Zugriff auf die Konsole Ihres Servers.
  • OpenSSL ist auf dem Server installiert.
  • Sie wissen, für welche Domain das SSL-Zertifikat beantragt werden soll.

1. OpenSSL installieren

Prüfen Sie zuerst, ob OpenSSL auf Ihrem Server installiert ist. Falls OpenSSL noch nicht installiert ist, installieren Sie es über die Paketverwaltung Ihres Servers oder laden Sie OpenSSL über die offizielle Website herunter: www.openssl.org

2. Privaten Schlüssel erstellen

Erstellen Sie zuerst den privaten Schlüssel:

openssl genrsa -out key.pem 2048

Auf Linux- oder Unix-Systemen können Sie die Dateirechte des privaten Schlüssels zusätzlich einschränken:

chmod 600 key.pem

3. CSR erstellen

Erstellen Sie anschließend die Zertifizierungsanforderung:

openssl req -new -key key.pem -out csr.pem

OpenSSL fragt danach die Angaben für den CSR ab. Tragen Sie die Daten passend zur Domain und zum Antragsteller ein.

Typische Angaben sind:

  • Country Name: Ländercode, zum Beispiel DE
  • State or Province Name: Bundesland oder Region
  • Locality Name: Ort
  • Organization Name: Unternehmen oder Organisation
  • Common Name: Domainname, zum Beispiel www.mustermann.de
Hinweis: Der Common Name muss zur Domain passen, für die das SSL-Zertifikat ausgestellt werden soll.

4. CSR verwenden

Die Datei csr.pem enthält den CSR. Diesen CSR reichen Sie bei der Bestellung oder Beantragung des SSL-Zertifikats ein.

Die Datei key.pem ist der private Schlüssel. Diese Datei bleibt auf Ihrem Server und wird später zusammen mit dem ausgestellten SSL-Zertifikat verwendet.

Optional: selbstsigniertes Testzertifikat erstellen

Für interne Tests können Sie aus dem CSR ein selbstsigniertes Testzertifikat erstellen:

openssl x509 -req -days 3650 -in csr.pem -signkey key.pem -out crt.pem
Hinweis: Ein selbstsigniertes Zertifikat ist nur für Tests geeignet. Für eine öffentlich erreichbare Website benötigen Sie ein gültiges SSL-Zertifikat einer Zertifizierungsstelle.