#openssl
15 Einzeiler mit diesem Stichwort.
Alle Einzeiler mit Tag openssl
Ablaufdatum des SSL-Zertifikats einer Website prüfen
$openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -dates
Ablaufdatum und Inhaber einer Zertifikatsdatei anzeigen
#openssl x509 -in /etc/letsencrypt/live/example.com/cert.pem -noout -subject -issuer -enddate
Alle Domains eines Zertifikats auslesen (SAN)
$openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -ext subjectAltName
Ausgelieferte Zertifikatskette eines Servers anzeigen
$openssl s_client -connect example.com:443 -servername example.com -showcerts </dev/null 2>/dev/null | grep -E "^ *([0-9]+ s:|i:)"
Inhalt einer CSR vor dem Einreichen prüfen
$openssl req -in example.com.csr -noout -text -verify
PFX-Datei in PEM mit Zertifikat und Schlüssel umwandeln
$openssl pkcs12 -in example.com.pfx -out example.com.pem -nodes
Privaten Schlüssel und CSR mit mehreren Domains erzeugen
$openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr -subj "/CN=example.com" -addext "subjectAltName=DNS:example.com,DNS:www.example.com"
Prüfen, ob das Zertifikat einer Website als vertrauenswürdig gilt
$openssl s_client -connect example.com:443 -servername example.com -verify_hostname example.com </dev/null 2>/dev/null | grep "Verify return code"
Prüfen, ob ein Server TLS 1.3 unterstützt
$openssl s_client -connect example.com:443 -servername example.com -tls1_3 </dev/null 2>/dev/null | grep -E "^New,|Protocol *:"
Prüfen, ob ein Zertifikat in den nächsten Tagen abläuft
#openssl x509 -in /etc/letsencrypt/live/example.com/cert.pem -noout -checkend $(( 30 * 86400 )) && echo "noch gültig" || echo "läuft bald ab"
Prüfen, ob privater Schlüssel und Zertifikat zusammenpassen
#openssl x509 -noout -modulus -in /etc/ssl/certs/example.com.crt | openssl md5 && openssl rsa -noout -modulus -in /etc/ssl/private/example.com.key | openssl md5
Selbstsigniertes Zertifikat für Tests erzeugen
$openssl req -x509 -newkey rsa:2048 -nodes -days 365 -keyout test.key -out test.crt -subj "/CN=test.example.com" -addext "subjectAltName=DNS:test.example.com"
SHA-256-Fingerabdruck eines Zertifikats anzeigen
$openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -fingerprint -sha256
SMTP-Verbindung mit STARTTLS und Zertifikat testen
$openssl s_client -connect mail.example.com:587 -starttls smtp -servername mail.example.com
Zertifikat und Schlüssel von PEM in PFX umwandeln
$openssl pkcs12 -export -out example.com.pfx -inkey example.com.key -in example.com.crt -certfile chain.pem