~/cheat-sheets / openssl
OpenSSL Befehle
Zertifikate prüfen, Ketten debuggen, Formate umwandeln – die openssl Befehle für den Alltag, durchsuchbar und mit einem Klick kopierbar.
33 Befehle
Verbindung testen
TLS-Verbindung mit SNI aufbauen und Handshake anzeigen
openssl s_client -connect example.com:443 -servername example.com </dev/nullKomplette ausgelieferte Zertifikatskette anzeigen
openssl s_client -connect example.com:443 -servername example.com -showcerts </dev/nullGültigkeitszeitraum des Server-Zertifikats
openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -datesSubject, Aussteller und SANs des Servers
openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -subject -issuer -ext subjectAltNameOCSP-Stapling prüfen
openssl s_client -connect example.com:443 -servername example.com -status </dev/null 2>/dev/null | grep -A 3 'OCSP Response'STARTTLS auf SMTP-Submission testen
openssl s_client -starttls smtp -connect mail.example.com:587 -servername mail.example.com </dev/nullSTARTTLS auf IMAP testen
openssl s_client -starttls imap -connect mail.example.com:143 </dev/nullIMAPS (implizites TLS) testen
openssl s_client -connect mail.example.com:993 -servername mail.example.com </dev/null
TLS-Versionen & Cipher
Prüfen, ob TLS 1.3 angeboten wird
openssl s_client -connect example.com:443 -servername example.com -tls1_3 </dev/nullPrüfen, ob TLS 1.2 angeboten wird
openssl s_client -connect example.com:443 -servername example.com -tls1_2 </dev/nullVeraltetes TLS 1.1 testen (sollte fehlschlagen)
openssl s_client -connect example.com:443 -servername example.com -tls1_1 </dev/nullBestimmte Cipher-Suite erzwingen
openssl s_client -connect example.com:443 -servername example.com -tls1_2 -cipher 'ECDHE-RSA-AES256-GCM-SHA384' </dev/nullCipher auflisten, die ein String freigibt
openssl ciphers -v 'HIGH:!aNULL:!MD5'
Zertifikate prüfen
Zertifikat vollständig lesbar anzeigen
openssl x509 -in cert.pem -noout -textAblaufdatum anzeigen
openssl x509 -in cert.pem -noout -enddateLäuft in 30 Tagen ab? (Exit-Code 1 = ja)
openssl x509 -in cert.pem -noout -checkend 2592000SHA-256-Fingerprint anzeigen
openssl x509 -in cert.pem -noout -fingerprint -sha256Kette gegen Root und Intermediate prüfen
openssl verify -CAfile root.pem -untrusted intermediate.pem cert.pem
Keys & CSR
Key und CSR mit SANs in einem Schritt erzeugen
openssl req -new -newkey rsa:4096 -nodes -keyout example.key -out example.csr -subj "/CN=example.com" -addext "subjectAltName=DNS:example.com,DNS:www.example.com"ECDSA-Key (P-256) erzeugen
openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-256 -out example.keyCSR anzeigen und Signatur prüfen
openssl req -in example.csr -noout -text -verifySelbstsigniertes Testzertifikat erstellen
openssl req -x509 -newkey rsa:2048 -nodes -days 365 -keyout test.key -out test.crt -subj "/CN=test.local"Passen Key und Zertifikat? Hashes müssen gleich sein
openssl x509 -in cert.pem -noout -pubkey | openssl sha256; openssl pkey -in key.pem -pubout | openssl sha256RSA-Abgleich über Modulus (klassische Methode)
openssl x509 -in cert.pem -noout -modulus | openssl md5; openssl rsa -in key.pem -noout -modulus | openssl md5
Formate umwandeln
PEM nach DER umwandeln
openssl x509 -in cert.pem -outform der -out cert.derDER nach PEM umwandeln
openssl x509 -in cert.der -inform der -out cert.pemPFX/P12 aus Key, Zertifikat und Kette bauen (Windows/IIS)
openssl pkcs12 -export -out cert.pfx -inkey key.pem -in cert.pem -certfile chain.pemPFX entpacken – Key liegt danach unverschlüsselt vor
⚠ Vorsicht: verändert oder löscht Datenopenssl pkcs12 -in cert.pfx -nodes -out all.pemPassphrase von einem Key entfernen
⚠ Vorsicht: verändert oder löscht Datenopenssl pkey -in encrypted.key -out plain.key
Hilfsfunktionen
Zufälliges Passwort erzeugen (32 Zeichen)
openssl rand -base64 24Zufälliges Secret als Hex (z. B. für Tokens)
openssl rand -hex 32SHA-256-Prüfsumme einer Datei
openssl dgst -sha256 file.isoOpenSSL-Version und Build-Optionen anzeigen
openssl version -a
Kein Treffer.
Neue Artikel per E-Mail
Eine E-Mail pro neuem Artikel. Kein Tracking, jederzeit abbestellbar. Als Dankeschön nach der Bestätigung: meine Checkliste „Server-Betrieb & Patching“ (PDF).