Was ist eine CSR und wie erstellt man sie?
Ein CSR (Certificate Signing Request) ist ein Block verschlüsselten Textes, den eine Organisation oder eine Einzelperson an eine Zertifizierungsstelle (CA) sendet, wenn sie ein SSL-Zertifikat beantragt. Die CSR enthält Informationen, die die Zertifizierungsstelle zur Erstellung des Zertifikats verwendet, z. B. den öffentlichen Schlüssel des Antragstellers und die Angaben zur Organisation. Dieses Zertifikat wird dann zur Sicherung der Kommunikation auf Websites verwendet, indem HTTPS aktiviert wird.
In diesem Artikel wird erklärt, was eine CSR ist, warum sie wichtig ist und wie Sie eine CSR Schritt für Schritt erstellen können.
Was ist eine CSR (Certificate Signing Request)?
Eine CSR ist eine Datei, die den öffentlichen Schlüssel des Website-Besitzers und wichtige Informationen über die Website und die Organisation enthält, die das SSL-Zertifikat anfordert. Diese Anforderung wird dann an eine Zertifizierungsstelle (CA) wie Let’s Encrypt, DigiCert oder Comodo übermittelt, die die Angaben vor der Ausstellung des Zertifikats prüft.
Ein typischer CSR enthält:
- Öffentlicher Schlüssel: Wird für den Verschlüsselungsprozess verwendet.
- Common Name (CN): Der vollständig qualifizierte Domänenname (FQDN), den Sie sichern möchten (z. B. www.example.com).
- Name der Organisation: Der Name des Unternehmens oder der Person, die das SSL-Zertifikat beantragt.
- Organisatorische Einheit: Die Abteilung oder der Bereich innerhalb des Unternehmens (optional).
- Ortschaft: Die Stadt, in der die Organisation ansässig ist.
- Staat/Provinz: Der Staat oder die Provinz, in dem/der die Organisation ansässig ist.
- Land: Der aus zwei Buchstaben bestehende Ländercode (z. B. US für die Vereinigten Staaten).
Die CSR enthält nicht den privaten Schlüssel der Website, der auf dem Server erzeugt und sicher aufbewahrt wird.
Warum ist eine CSR wichtig?
Eine CSR ist ein wesentlicher Bestandteil des Verfahrens zur Ausstellung von SSL-Zertifikaten. Hier ist, warum es wichtig ist:
1. Beantragung eines SSL-Zertifikats
Wenn Sie ein SSL-Zertifikat beantragen, müssen Sie eine CSR an die Zertifizierungsstelle übermitteln. Die Zertifizierungsstelle verwendet die Informationen in der CSR, um ein Zertifikat auszustellen, das der Domäne, der Organisation und dem Server entspricht.
2. Sicherheit
Die CSR enthält den öffentlichen Schlüssel, der zur Verschlüsselung von Daten zwischen dem Server und dem Client (dem Browser) verwendet wird. Der private Schlüssel, der zusammen mit dem öffentlichen Schlüssel generiert wird, wird auf dem Server sicher aufbewahrt und niemals an Dritte weitergegeben. Zusammen ermöglichen sie eine sichere Kommunikation mit SSL/TLS.
3. Validierung
Die CA verwendet die Informationen in der CSR, um die Identität des Zertifikatsantragstellers zu überprüfen. Je nach Art des SSL-Zertifikats (z. B. Domain Validation, Organization Validation oder Extended Validation) kann die CA vor der Ausstellung des Zertifikats verschiedene Prüfungen durchführen.
Wie man eine CSR erstellt
Die Erstellung einer CSR beinhaltet die Generierung eines öffentlich-privaten Schlüsselpaares und die anschließende Erstellung der CSR unter Verwendung dieser Schlüssel. Der Vorgang variiert je nach verwendetem Server leicht, die grundlegenden Schritte sind jedoch gleich.
Schritt 1: Erzeugen eines privaten Schlüssels
Der erste Schritt bei der Erstellung einer CSR ist die Generierung eines privaten Schlüssels. Der private Schlüssel wird zum Ver- und Entschlüsseln von Daten auf Ihrer Website verwendet und sollte sicher aufbewahrt werden.
Beispiel mit OpenSSL (Linux, macOS oder Windows mit installiertem OpenSSL):
- Öffnen Sie ein Terminal oder eine Eingabeaufforderung.
- Führen Sie den folgenden Befehl aus, um einen privaten Schlüssel zu erzeugen:
openssl genrsa -out private.key 2048
Dadurch wird ein 2048-Bit-RSA-Schlüssel erzeugt und in einer Datei namens private.key gespeichert.
Schritt 2: Erzeugen Sie die CSR
Sobald Sie den privaten Schlüssel haben, ist der nächste Schritt die Erstellung der CSR. Die CSR enthält den öffentlichen Schlüssel (abgeleitet vom privaten Schlüssel) und Informationen über Ihre Organisation.
Beispiel mit OpenSSL:
- Führen Sie im Terminal den folgenden Befehl aus:
openssl req -new -key private.key -out yourdomain.csr
Sie werden aufgefordert, Informationen für die CSR einzugeben. Folgende Angaben müssen Sie machen:
- Landesname (2-Buchstaben-Code): Der aus zwei Buchstaben bestehende Code Ihres Landes (z. B. USA, GB).
- Name des Bundesstaates oder der Provinz: Der vollständige Name des Staates oder der Provinz (nicht abkürzen).
- Name des Ortes: Die Stadt oder der Ort, in dem sich Ihre Organisation befindet.
- Name der Organisation: Der vollständige rechtliche Name Ihres Unternehmens oder Ihrer Organisation (oder Ihr Name, wenn Sie eine Einzelperson sind).
- Name der organisatorischen Einheit: Die Abteilung oder der Bereich (optional).
- Allgemeiner Name: Der vollständig qualifizierte Domänenname (FQDN), den Sie sichern möchten (z. B. www.example.com oder example.com).
- E-Mail Adresse: Ihre Kontakt-E-Mail-Adresse (optional).
- Nach Eingabe der erforderlichen Informationen wird der CSR in einer Datei namens yourdomain.csr gespeichert.
Schritt 3: Einreichen der CSR bei der Zertifizierungsstelle
Sobald Ihre CSR erstellt ist, können Sie sie bei der Zertifizierungsstelle (CA) einreichen, wenn Sie ein SSL-Zertifikat beantragen. Die Zertifizierungsstelle wird die Informationen in der CSR verwenden, um das Zertifikat auszustellen.
Schritt 4: Den privaten Schlüssel sicher speichern
Der in Schritt 1 erzeugte private Schlüssel ist entscheidend für die SSL-Verschlüsselung. Bewahren Sie ihn sicher auf und geben Sie ihn nicht an Dritte weiter. Wenn der private Schlüssel verloren geht oder kompromittiert wird, müssen Sie einen neuen Schlüssel erstellen und ein neues SSL-Zertifikat beantragen.
Gängige CSR-Tools und -Methoden
Neben OpenSSL können Sie CSRs auch mit anderen Tools und Methoden erstellen, je nach der von Ihnen verwendeten Plattform:
1. Mit cPanel (Web Hosting Control Panel)
Wenn Ihre Website bei einem Anbieter gehostet wird, der cPanel verwendet, können Sie eine CSR direkt im Control Panel erstellen:
- Melden Sie sich bei Ihrem cPanel-Konto an.
- Navigieren Sie zum Abschnitt Sicherheit und klicken Sie auf SSL/TLS.
- Klicken Sie unter Certificate Signing Requests (CSR) auf Generate, view, or delete SSL certificate signing requests.
- Füllen Sie das CSR-Formular mit den erforderlichen Informationen aus (ähnlich denen, die Sie in OpenSSL eingeben).
- Klicken Sie auf Erzeugen. Die CSR wird angezeigt, und Sie können sie kopieren, um sie an Ihre Zertifizierungsstelle zu übermitteln.
2. Verwendung von IIS (Windows Server)
Wenn Sie eine Website auf einem Windows Server mit IIS verwalten, können Sie eine CSR mit dem IIS Manager erstellen:
- Öffnen Sie den IIS-Manager auf Ihrem Server.
- Wählen Sie Ihren Server im Bereich Verbindungen aus.
- Doppelklicken Sie auf Serverzertifikate im Abschnitt IIS.
- Klicken Sie im Bedienfeld Aktionen auf Zertifikatsanforderung erstellen.
- Füllen Sie die CSR-Details aus und klicken Sie auf Weiter.
- Wählen Sie den kryptografischen Anbieter und die Bitlänge (normalerweise 2048).
- Speichern Sie die CSR in einer Datei und senden Sie sie an die Zertifizierungsstelle.
Fazit
Eine Certificate Signing Request (CSR) ist ein wichtiger Teil des SSL-Zertifikatsprozesses, mit dem Sie ein Zertifikat bei einer Zertifizierungsstelle beantragen können. Sie enthält wichtige Informationen über Ihr Unternehmen und die Domain, die Sie schützen möchten. Durch die Erstellung einer CSR mit Tools wie OpenSSL, cPanel oder IIS können Sie ein SSL-Zertifikat erhalten, das Ihre Website schützt und eine sichere Kommunikation zwischen dem Server und seinen Besuchern ermöglicht.
Denken Sie daran, Ihren privaten Schlüssel sicher aufzubewahren und die Anweisungen der Zertifizierungsstelle zu befolgen, um die Installation des SSL-Zertifikats abzuschließen. Mit einem richtig konfigurierten SSL-Zertifikat stellen Sie sicher, dass Ihre Website für die Benutzer sicher und vertrauenswürdig bleibt.