bg-tutorials

Wie man einen CSR auf Sentora generiert

Diese Anleitung zeigt Ihnen wie Sie eine CSR (Certificate Signing Request) auf Sentora erstellen mit OpenSSL. Sentoras Control Panel verfügt über kein integriertes CSR-Tool, daher erstellen Sie die Anfrage direkt auf dem Server, der unter Apache und Linux läuft. Ein einziger Befehl erzeugt gleichzeitig zwei Dateien: einen privaten Schlüssel, der auf Ihrem Server verbleibt, und die CSR, die Sie bei Ihrer Zertifizierungsstelle (CA) einreichen.

Sentora selbst entwickelt sich langsam, wird aber nicht vernachlässigt; die aktuelle stabile Version ist v2.0.2 (Mai 2024, mit PHP 7.4), die von ehemaligen ZPanel-Entwicklern gepflegt wird, und der unten beschriebene OpenSSL-Workflow ist von der Panel-Version unabhängig.

Wenn Sie Ihre CSR bereits erstellt und das ausgestellte Zertifikat von Ihrer CA erhalten haben, springen Sie direkt zu Installieren des SSL-Zertifikats auf Sentora. Andernfalls folgen Sie den nachstehenden Schritten.

Schritt 1: Melden Sie sich als root auf dem Server an

Öffnen Sie eine SSH-Sitzung zu dem Server, auf dem Sentora läuft, und wechseln Sie zu root. Das Erstellen einer CSR erfordert nicht zwingend root-Rechte, aber Sie benötigen diese im nächsten Schritt, um OpenSSL zu installieren, falls es fehlt:

sudo -i

Schritt 2: Bestätigen, dass OpenSSL installiert ist

OpenSSL wird mit jeder aktuellen Debian-, Ubuntu-, CentOS-, AlmaLinux- und Rocky Linux-Version ausgeliefert, sodass es fast sicher bereits vorhanden ist. Prüfen Sie die Version:

openssl version

Wenn der Befehl eine Versionsnummer meldet, fahren Sie mit Schritt 3 fort. Ist es nicht installiert, fügen Sie es mit dem Paketmanager Ihrer Distribution hinzu.

Unter Debian oder Ubuntu:

apt update && apt install -y openssl

Unter CentOS, AlmaLinux oder Rocky Linux:

dnf install -y openssl

Auf älteren Systemen, auf denen dnf nicht verfügbar ist, funktioniert yum install -y openssl genauso.

Schritt 3: Privaten Schlüssel und CSR erstellen

Führen Sie den folgenden Befehl in einem Verzeichnis aus, in das Sie schreiben können, zum Beispiel im Home-Verzeichnis. Er erstellt den privaten Schlüssel und die CSR in einem Schritt und enthält die Subject Alternative Names (SANs), die moderne Browser und CAs benötigen:

openssl req -new -newkey rsa:2048 -nodes 
-keyout example.key 
-out example.csr 
-subj "/C=US/ST=New York/L=New York/O=Example LLC/CN=example.com" 
-addext "subjectAltName=DNS:example.com,DNS:www.example.com"

Hier ist, was jeder Teil bewirkt:

  • req -new erstellt eine neue Zertifikatsanforderung.
  • -newkey rsa:2048 erzeugt einen neuen 2048-Bit-RSA-Privatschlüssel. 2048 Bit ist derzeit das Minimum für öffentliche Zertifikate; verwenden Sie rsa:4096, wenn Sie einen größeren Schlüssel wünschen.
  • -nodes lässt den privaten Schlüssel unverschlüsselt (ohne Passphrase), sodass Apache starten kann, ohne nach einem Passwort zu fragen. Dies ist die portable Schreibweise und funktioniert bei jeder OpenSSL-Version.
  • -keyout example.key schreibt den privaten Schlüssel. Halten Sie diese Datei geheim und senden Sie sie niemals an jemanden.
  • -out example.csr schreibt die CSR, die Sie bei der CA einreichen.
  • -subj füllt die Subjektfelder direkt aus, sodass der Befehl ohne interaktive Eingabeaufforderungen ausgeführt wird. Setzen Sie CN (Common Name) auf Ihren vollqualifizierten Domainnamen.
  • -addext „subjectAltName=…“ fügt die SAN-Einträge hinzu. CAs stellen Zertifikate anhand der SAN-Liste aus, daher müssen alle Hostnamen aufgeführt werden, die das Zertifikat abdecken soll.

Ersetzen Sie jeden Platzhalter durch Ihre tatsächlichen Angaben:

  • example.com: Ihre tatsächliche Domain, sowohl im CN als auch in der SAN-Liste.
  • C, ST, L, O: Ihr zweibuchstabiger Ländercode (Großbuchstaben, zum Beispiel US oder GB), Bundesland oder Provinz, Stadt und der offizielle Name Ihrer Organisation. Bei einem domainvalidierten (DV) Zertifikat werden diese Felder nicht überprüft, der Befehl benötigt aber trotzdem gültige Werte.
  • example.key und example.csr: beliebige Dateinamen, solange Sie konsistent bleiben.

Moderne OpenSSL-Versionen signieren die Anfrage standardmäßig mit SHA-256, was von CAs verlangt wird, sodass kein separates Digest-Flag hinzugefügt werden muss.

Absichern eines Wildcards oder zusätzlicher Subdomains

Um weitere Hostnamen hinzuzufügen, erweitern Sie die SAN-Liste mit zusätzlichen, durch Kommas getrennten DNS:-Einträgen, zum Beispiel DNS:api.example.com. Für ein Wildcard-Zertifikat setzen Sie CN auf *.example.com und behalten die Apex-Domain in der SAN-Liste bei. Ein Wildcard deckt genau eine Ebene von Subdomains ab (www.example.com, mail.example.com), jedoch nicht die reine Apex-Domain (example.com), daher muss die Apex-Domain separat aufgeführt werden, um abgedeckt zu sein:

-addext "subjectAltName=DNS:*.example.com,DNS:example.com"

Bevorzugen Sie einen ECDSA-Schlüssel?

ECDSA-Schlüssel sind bei gleichem Sicherheitsniveau kleiner und schneller als RSA und werden von allen aktuellen Browsern unterstützt. Um stattdessen einen P-256 (prime256v1) Schlüssel und eine CSR zu erstellen, tauschen Sie das Argument -newkey aus:

openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -pkeyopt ec_param_enc:named_curve -nodes 
-keyout example.key 
-out example.csr 
-subj "/C=US/ST=New York/L=New York/O=Example LLC/CN=example.com" 
-addext "subjectAltName=DNS:example.com,DNS:www.example.com"

Die Option ec_param_enc:named_curve sorgt dafür, dass die Kurve mit Namen gespeichert wird, was von PKIX gefordert wird; ohne diese Option betten einige OpenSSL-Versionen die vollständigen Kurvenparameter ein, und die CA lehnt die Anfrage ab.

Schritt 4: CSR überprüfen

Bevor Sie die Anfrage einreichen, bestätigen Sie, dass sie die richtige Domain und SANs enthält und dass ihre Signatur gültig ist. Dieser Befehl decodiert die CSR und prüft die Signatur lokal:

openssl req -noout -text -verify -in example.csr

Achten Sie in der Ausgabe auf verify OK, prüfen Sie, ob die Zeile Subject Ihren Common Name anzeigt, und bestätigen Sie, dass der Abschnitt X509v3 Subject Alternative Name alle erwarteten Hostnamen auflistet. Fehlt ein SAN, erstellen Sie die CSR mit dem korrekten -addext-Wert neu. Sie können die Anfrage auch in unseren Online-CSR-Decoder einfügen, um diese Felder im Browser zu prüfen.

Schritt 5: CSR suchen und einreichen

Listen Sie das Arbeitsverzeichnis auf, um zu bestätigen, dass beide Dateien existieren:

ls -l example.key example.csr

Da Sie sich auf einem Linux-Server befinden, öffnen Sie die CSR mit einem Terminal-Viewer und nicht mit einem Windows-Editor. Geben Sie sie mit folgendem Befehl auf dem Bildschirm aus:

cat example.csr

Kopieren Sie den gesamten Block einschließlich der ersten und letzten Zeile. Eine CSR wird durch CERTIFICATE REQUEST-Markierungen mit fünf Bindestrichen auf jeder Seite begrenzt, nicht durch die CERTIFICATE-Markierungen eines ausgestellten Zertifikats:

-----BEGIN CERTIFICATE REQUEST-----
MIIC...base64-encoded data...AB
-----END CERTIFICATE REQUEST-----

Fügen Sie diesen Block in Ihr SSL-Bestellformular ein. Nachdem die CA die Anfrage validiert und Ihr Zertifikat ausgestellt hat, folgen Sie unserer Anleitung zum Installieren eines SSL-Zertifikats auf Sentora, um es bereitzustellen. Bewahren Sie die Datei example.key auf dem Server auf: Sie benötigen sie zusammen mit dem ausgestellten Zertifikat, um HTTPS zu aktivieren, und dürfen sie niemals an die CA oder eine andere Person senden.

Wenn Sie die Befehlszeile lieber gar nicht verwenden möchten, können Sie die Anfrage mit unserem CSR-Generator erstellen und das Ergebnis in Ihre Bestellung einfügen.

Sparen Sie 10% auf SSL-Zertifikate, wenn Sie noch heute bestellen!

Schnelle Ausstellung, starke Verschlüsselung, 99,99% Browser-Vertrauen, engagierter Support und 25-tägige Geld-zurück-Garantie. Gutscheincode: SAVE10

A detailed image of a dragon in flight
Geschrieben von

Erfahrener Content-Autor, spezialisiert auf SSL-Zertifikate. Verwandeln Sie komplexe Cybersicherheitsthemen in klare, ansprechende Inhalte. Tragen Sie durch wirkungsvolle Narrative zur Verbesserung der digitalen Sicherheit bei.