Zertifikate & OpenSSL
Die wichtigsten OpenSSL-Befehle rund um SSL/TLS-Zertifikate: ansehen, beantragen, umwandeln und prüfen. Dateinamen und Domains in den Beispielen durch deine eigenen ersetzen.
Stand: Oktober 2026 · werkzeugkisterl.at/spickzettel/zertifikate-openssl
Für ein PDF im Druckfenster „Als PDF speichern“ wählen.
Dateien und Formate
| Endung | Inhalt |
|---|---|
| .pem .crt .cer | Zertifikat als Text mit „-----BEGIN CERTIFICATE-----“; mehrere hintereinander ergeben eine Kette |
| .der | Dasselbe Zertifikat in binärer Form |
| .csr | Zertifikatsanfrage: öffentlicher Schlüssel und Name, geht an den Anbieter |
| .key | Privater Schlüssel – bleibt auf dem Server und wird nie weitergegeben |
| .pfx .p12 | Zertifikat, Kette und privater Schlüssel in einer Datei, mit Passwort (Windows, IIS) |
| .p7b | Zertifikat und Kette ohne Schlüssel |
Zertifikat ansehen
| Aufgabe | Befehl |
|---|---|
| Alles anzeigen | openssl x509 -in cert.pem -noout -text |
| Inhaber, Aussteller, Laufzeit | openssl x509 -in cert.pem -noout -subject -issuer -dates |
| Domains (SAN) | openssl x509 -in cert.pem -noout -ext subjectAltName |
| Fingerabdruck | openssl x509 -in cert.pem -noout -fingerprint -sha256 |
| CSR anzeigen und prüfen | openssl req -in anfrage.csr -noout -text -verify |
Schlüssel und CSR erstellen
| Aufgabe | Befehl |
|---|---|
| RSA-Schlüssel und CSR | openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr -subj "/CN=example.at" -addext "subjectAltName=DNS:example.at,DNS:www.example.at" |
| EC-Schlüssel (P-256) und CSR | openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:P-256 -nodes -keyout server.key -out server.csr -subj "/CN=example.at" |
| Selbst signiert zum Testen | openssl req -x509 -newkey rsa:2048 -nodes -days 365 -keyout test.key -out test.crt -subj "/CN=test.local" -addext "subjectAltName=DNS:test.local" |
Umwandeln
| Aufgabe | Befehl |
|---|---|
| PEM → DER | openssl x509 -in cert.pem -outform der -out cert.der |
| DER → PEM | openssl x509 -inform der -in cert.der -out cert.pem |
| PFX → Zertifikate | openssl pkcs12 -in datei.pfx -nokeys -out zertifikate.pem |
| PFX → privater Schlüssel | openssl pkcs12 -in datei.pfx -nocerts -nodes -out server.key |
| PEM → PFX | openssl pkcs12 -export -in cert.pem -inkey server.key -certfile kette.pem -out datei.pfx |
| P7B → PEM | openssl pkcs7 -print_certs -in kette.p7b -out kette.pem |
Prüfen
| Aufgabe | Befehl |
|---|---|
| Zertifikate einer Webseite abrufen | openssl s_client -connect example.at:443 -servername example.at -showcerts </dev/null |
| Ablaufdatum einer Webseite | openssl s_client -connect example.at:443 -servername example.at </dev/null | openssl x509 -noout -dates |
| Passt der Schlüssel? (beide Werte gleich) | openssl pkey -in server.key -pubout | openssl sha256 und openssl x509 -in cert.pem -noout -pubkey | openssl sha256 |
| Kette prüfen | openssl verify -CAfile root.pem -untrusted zwischen.pem cert.pem |
Gut zu wissen
- Der private Schlüssel gehört niemandem außer deinem Server – auch nicht dem Support oder einem Online-Prüfer. Wurde er geteilt, lass das Zertifikat sperren und neu ausstellen.
- Der Server schickt sein Zertifikat und die Zwischenzertifikate mit, in dieser Reihenfolge. Bei Let's Encrypt ist das die Datei fullchain.pem.
- Öffentlich vertraute Webserver-Zertifikate werden immer kürzer: höchstens 200 Tage ab 15. März 2026, 100 Tage ab 2027 und 47 Tage ab 2029. Automatisch erneuern (ACME, etwa certbot) erspart Ärger.
- Unter Windows zeigt certutil -dump cert.cer die wichtigsten Angaben auch ohne OpenSSL.
Weiterführend
- Let's Encrypt: Dokumentation – https://letsencrypt.org/docs/
Sorgfältig zusammengestellt, aber ohne Gewähr. Mehr dazu in den Nutzungshinweisen. Fehlt etwas oder ist dir ein Fehler aufgefallen? Wir freuen uns über dein Feedback.