OpenSSL ist eine der am weitesten verbreiteten Software zur Zertifikatsverwaltung und -erstellung für einen Großteil der modernen Computertechnik.
OpenSSL kann auch als komplizierte Software mit vielen Optionen angesehen werden, die oft durch die unzähligen Möglichkeiten zur Konfiguration und Bereitstellung von SSL-Zertifikaten noch verstärkt werden.
OpenSSL ist normalerweise in den meisten Linux-Distributionen enthalten. Im Falle von Ubuntu wird durch einfaches Ausführen von apt install OpenSSL sichergestellt, dass Sie die Binärdatei verfügbar und in der neuesten Version haben. OpenSSL unter Windows ist etwas schwieriger, da Sie eine vorkompilierte Binärdatei installieren müssen, um loszulegen.
Eine solche Quelle, die vorkompilierte OpenSSL-Binärdateien bereitstellt, ist die folgende Website von SLProWeb. Die empfohlene Endbenutzerversion, die sowohl ausführbare Dateien als auch MSI-Installationen anbietet, ist die Light x64 MSI-Installation. Die Standardoptionen sind am einfachsten zu starten.
Überprüfen Sie, ob die Installation funktioniert, indem Sie den folgenden Befehl ausführen. Beachten Sie, dass dieser Befehl in der PowerShell-Umgebung ausgeführt wurde (daher der & vor dem Befehl).
& "C:\\Programme\\OpenSSL-Win64\\bin\\openssl.exe" Version
Um die Ausführung dieses Befehls zu vereinfachen, können Sie den Pfad in PowerShell so ändern, dass er die ausführbare Datei $Env:Path = $Env:Path + "; C:\\Programme\\OpenSSL-Win64\\bin"
Es gibt viele verschiedene Möglichkeiten, Zertifikate zu generieren, aber die Anwendungsfälle, die normalerweise auftauchen, sind die folgenden.
Ein gängiger Servervorgang besteht darin, ein selbstsigniertes Zertifikat zu generieren. Es gibt viele Gründe dafür, z. B. das Testen oder Verschlüsseln der Kommunikation zwischen internen Servern. Der folgende Befehl generiert einen privaten Schlüssel und ein Zertifikat
openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:4096 -keyout private.key -out certificate.crt
Lassen Sie uns die verschiedenen Parameter aufschlüsseln, um zu verstehen, was passiert.
Sobald das Zertifikat generiert wurde, sollten wir überprüfen, ob es gemäß den von uns festgelegten Parametern korrekt ist.
openssl x509 -in certificate.crt -text -noout
Die Parameter hier sind für die Überprüfung eines x509-Typzertifikats. Die Kombination ermöglicht es, das Zertifikat in einem Format auszugeben, das für eine Person leichter lesbar ist.
Der nächsthäufigste Anwendungsfall von OpenSSL ist das Erstellen von Zertifikatsignieranforderungen zum Anfordern eines Zertifikats von einer vertrauenswürdigen Zertifizierungsstelle.
openssl req -new -newkey rsa:2048 -nodes -out request.csr -keyout private.key
Ähnlich wie beim vorherigen Befehl zum Generieren eines selbstsignierten Zertifikats generiert dieser Befehl eine CSR. Sie werden feststellen, dass die Parameter -x509, -sha256und -days fehlen. Indem wir diese ausschalten, sagen wir OpenSSL, dass eine andere Zertifizierungsstelle das Zertifikat ausstellen wird. In diesem Fall lassen wir die Option -nodes aktiviert, um nicht zur Eingabe eines Kennworts mit dem privaten Schlüssel aufzufordern.
Um zu überprüfen, ob die CSR korrekt ist, führen wir erneut einen ähnlichen Befehl aus, jedoch mit dem hinzugefügten Parameter -verify. Mit diesem Befehl wird überprüft, ob die generierte CSR korrekt ist. Dies ist ein umsichtiger Schritt, bevor Sie sich an eine Zertifizierungsstelle senden.
openssl req -in request.csr -text -noout -verify
OpenSSL ist ein komplexes und leistungsstarkes Programm. Obwohl dieser Artikel nur an der Oberfläche dessen kratzt, was getan werden kann, sind dies häufige und wichtige Vorgänge, die im Allgemeinen von Systemadministratoren ausgeführt werden. Es gibt noch viel mehr zu lernen, aber mit diesem Ausgangspunkt hat ein IT-Experte eine großartige Grundlage, auf der er aufbauen kann!
Adam Bertram is a 20-year veteran of IT. He’s currently an automation engineer, blogger, independent consultant, freelance writer, author, and trainer. Adam focuses on DevOps, system management, and automation technologies as well as various cloud platforms. He is a Microsoft Cloud and Datacenter Management MVP and efficiency nerd that enjoys teaching others a better way to leverage automation.
Lassen Sie sich von unseren Experten beibringen, wie Sie die erstklassigen Funktionen von Sitefinity nutzen können, um überzeugende digitale Erlebnisse zu bieten.
Weitere InformationenAbonnieren Sie, um alle Neuigkeiten, Informationen und Tutorials zu erhalten, die Sie benötigen, um bessere Business-Apps und -Websites zu erstellen