Wie generiere ich unter Windows mit OpenSSL ein selbstsigniertes Zertifikat?
- Installation von OpenSSL unter Windows
- Erstellen eines privaten Schlüssels
- Generierung des selbstsignierten Zertifikats
- Verwendung und Einbindung des Zertifikats
- Zusammenfassung
Die Erstellung eines selbstsignierten Zertifikats unter Windows mit OpenSSL ist ein wichtiger Schritt, wenn man sichere Verbindungen für Entwicklungs- oder Testzwecke benötigt, ohne auf eine Zertifizierungsstelle (CA) zurückgreifen zu müssen. OpenSSL stellt dabei eine leistungsstarke und vielseitige Kommandozeilenanwendung dar, mit der man unter anderem Zertifikate und Schlüssel generieren kann.
Installation von OpenSSL unter Windows
Bevor mit der Erstellung eines selbstsignierten Zertifikats begonnen werden kann, muss OpenSSL auf dem Windows-System installiert sein. Offizielle OpenSSL-Pakete für Windows gibt es nicht direkt von den Hauptentwicklern, jedoch sind vorgefertigte Installationspakete von verschiedenen Anbietern verfügbar, zum Beispiel von Shining Light Productions. Nach der Installation sollte das OpenSSL-Verzeichnis zur PATH-Umgebungsvariable hinzugefügt werden, damit die OpenSSL-Befehle über die Eingabeaufforderung oder PowerShell aufgerufen werden können.
Erstellen eines privaten Schlüssels
Ein selbstsigniertes Zertifikat benötigt zunächst einen privaten Schlüssel. Dieser Schlüssel bildet die Grundlage für die Verschlüsselung und sollte sicher verwahrt werden. Unter Windows kann dieser beispielsweise mit folgendem Befehl in der Eingabeaufforderung erstellt werden:
openssl genrsa -out privater_schluessel.key 2048Dieser Befehl generiert einen 2048-Bit-RSA-Schlüssel und speichert ihn in der Datei privater_schluessel.key.
Generierung des selbstsignierten Zertifikats
Nachdem der private Schlüssel erzeugt wurde, kann nun das selbstsignierte Zertifikat generiert werden. Das Zertifikat enthält Informationen wie den Namen des Besitzers, den öffentlichen Schlüssel und das Gültigkeitsdatum. Der OpenSSL-Befehl dafür lautet beispielsweise:
openssl req -new -x509 -key privater_schluessel.key -out selbstsigniertes_zertifikat.crt -days 365Dieser Befehl erstellt ein Zertifikat, das 365 Tage gültig ist. Während der Ausführung werden Informationen wie der "Common Name" (häufig der Domainname oder Rechnername), Land, Bundesland, Organisation usw. abgefragt. Diese Angaben sind wichtig, um das Zertifikat individuell zu gestalten.
Verwendung und Einbindung des Zertifikats
Nach erfolgreicher Erstellung des selbstsignierten Zertifikats und des zugehörigen Schlüssels können diese in Anwendungen wie Webservern (z.B. Apache oder Nginx) eingebunden werden, um HTTPS-Verbindungen abzusichern. Da das Zertifikat selbstsigniert ist, wird es von Browsern standardmäßig als unsicher eingestuft, weshalb es nur für interne Tests oder Entwicklungsumgebungen geeignet ist.
Zusammenfassung
Das Generieren eines selbstsignierten Zertifikats unter Windows mit OpenSSL ist dank der Kommandozeilenbefehle unkompliziert durchführbar. Nach der Installation gilt es zuerst, einen privaten Schlüssel zu erzeugen und anschließend mit diesem Schlüssel das Zertifikat zu erstellen. Für produktive Umgebungen sind Zertifikate von offiziellen Zertifizierungsstellen jedoch zwingend empfohlen, da sie von Clients als vertrauenswürdig anerkannt werden.
