Der umfassende Leitfaden zu OpenSSL: Zertifikate und Schlüssel
OpenSSL ist das Schweizer Taschenmesser der Kryptographie. Egal, ob Sie ein neues SSL-Zertifikat für Ihre Website generieren, einen Schlüssel zwischen verschiedenen Formaten konvertieren oder ein Problem in einer Zertifikatskette debuggen – OpenSSL ist das Werkzeug der Wahl. Allerdings ist seine Befehlszeilenschnittstelle für ihre Komplexität berüchtigt.
Dieser Leitfaden bietet einen klaren Weg durch die gängigsten OpenSSL-Aufgaben, von der Generierung Ihres ersten selbstsignierten Zertifikats bis hin zu fortgeschrittenen Konvertierungen.
1. Zertifikate und Anforderungen generieren
Bevor Sie ein Zertifikat haben können, müssen Sie einen Schlüssel und oft auch einen Certificate Signing Request (CSR) generieren.
CSR-Generator Online
Ein CSR-Generator online ist zwar ein schneller Weg, um eine Anforderung zu erstellen, aber es ist sicherer, sie lokal zu generieren, damit Ihr privater Schlüssel niemals Ihren Server verlässt. Ein CSR enthält Informationen über Ihre Organisation und den öffentlichen Schlüssel, den Sie von einer Zertifizierungsstelle (CA) signieren lassen möchten.
Generator für selbstsignierte Zertifikate
Für interne Tests oder Staging-Umgebungen reicht ein Generator für selbstsignierte Zertifikate oft aus. Er ermöglicht es Ihnen, ein Zertifikat zu erstellen, dem öffentliche Browser zwar nicht vertrauen, das aber für die verschlüsselte Kommunikation funktional identisch ist.
OpenSSL Cheat Sheet: Schlüsselgenerierung
- RSA-Privatschlüssel generieren:
openssl genrsa -out private.key 2048 - CSR generieren:
openssl req -new -key private.key -out request.csr - Selbstsigniertes Zertifikat generieren:
openssl x509 -req -days 365 -in request.csr -signkey private.key -out certificate.crt
2. Formatkonvertierung
Verschiedene Plattformen und Server erfordern unterschiedliche Zertifikatsformate.
PEM zu DER und DER zu PEM Konverter
- PEM: Das gängigste Format, meist
.crtoder.pem. Es ist base64-kodiert und enthält Text wie-----BEGIN CERTIFICATE-----. - DER: Eine binäre Darstellung des Zertifikats, die häufig von Java oder spezieller Hardware verwendet wird.
OpenSSL Cheat Sheet: Konvertierungsbefehle
- PEM zu DER Konverter:
openssl x509 -in cert.pem -outform der -out cert.der - DER zu PEM Konverter:
openssl x509 -in cert.der -inform der -out cert.pem
PKCS#12 zu PEM Konverter
Windows und einige Unternehmenssysteme verwenden das PKCS#12 (.p12 oder .pfx)-Format, das das Zertifikat und den privaten Schlüssel in einer einzigen, passwortgeschützten Datei bündelt.
- PKCS#12 zu PEM Konverter:
openssl pkcs12 -in cert.p12 -out cert.pem -nodes
3. Debugging und Validierung
Nichts ist frustrierender als ein "Ungültiges Zertifikat"-Fehler. Werkzeuge zum Dekodieren und Überprüfen Ihrer Zertifikate sind unerlässlich.
SSL-Zertifikats-Dekoder
Ein SSL-Zertifikats-Dekoder ermöglicht es Ihnen, die menschenlesbaren Details einer Zertifikatsdatei zu lesen.
- Zertifikatsinfo anzeigen:
openssl x509 -in certificate.crt -text -noout - CSR-Info anzeigen:
openssl req -in request.csr -text -noout
Zertifikatsketten-Prüfer
Ein Zertifikatsketten-Prüfer stellt sicher, dass Ihr Server die vollständige Kette einschließlich Zwischenzertifikaten ausliefert. Wenn die Kette unterbrochen ist, zeigen mobile Geräte und einige Browser eine Sicherheitswarnung an.
- Lokale Datei verifizieren:
openssl verify -CAfile ca-bundle.crt certificate.crt - Remote-Server prüfen:
openssl s_client -connect google.com:4443
4. Zusammenfassung
OpenSSL ist ein mächtiges, aber einschüchterndes Werkzeug. Durch die Verwendung unseres OpenSSL Cheat Sheets und das Verständnis gängiger Aufgaben wie der PEM-zu-DER-Konvertierung oder der CSR-Generierung können Sie die Sicherheitsinfrastruktur jeder modernen Webanwendung souverän verwalten.
Denken Sie immer daran, Ihre privaten Schlüssel geheim zu halten, starke Algorithmen (wie RSA 2048+ oder ECC) zu verwenden und Ihre Zertifikatsketten zu überprüfen, bevor Sie sie in die Produktion überführen.