Start·Terminal-Befehle

openssl s_client

Netzwerk

Aufruf

openssl s_client -connect <host>:443 -servername <host>

Offnet eine rohe TLS-Verbindung, um Zertifikat und Handshake zu prufen; ohne `-servername` liefert ein Server mit vielen Seiten auf einer Adresse sein Standardzertifikat, und ohne `< /dev/null` wartet er endlos auf Eingabe.

Häufige Optionen

OptionBedeutung
-connect host:443Where to open the TLS connection.
-servername <host>The SNI name. Without it a shared host serves its default certificate.
-showcertsPrint the whole chain the server sent, not just the leaf.
-tls1_2 / -tls1_3Force one protocol version, to test what the server still accepts.
-verify_return_errorFail instead of continuing when the chain does not validate.
< /dev/nullClose stdin, or the command sits and waits forever.

Beispiele

openssl s_client -connect example.com:443 -servername example.com < /dev/null 2>/dev/null | openssl x509 -noout -dates

When the certificate expires.

openssl s_client -connect example.com:443 -showcerts < /dev/null

Inspect the full chain for a missing intermediate.

Wenn eine Verbindung scheitert, grenzen diese ein, wie weit sie kam — Name löst nicht auf, keine Route, oder der Port ist zu.

So liest man das

  • Eckige Klammern [ ] markieren einen Teil, den man weglassen kann.
  • Drei Punkte … heißen: mehrere sind erlaubt.
  • Optionen achten auf Groß- und Kleinschreibung — bei manchen Befehlen sind -r und -R verschieden.

Häufige Fragen

Q. Was macht openssl s_client?

Offnet eine rohe TLS-Verbindung, um Zertifikat und Handshake zu prufen; ohne `-servername` liefert ein Server mit vielen Seiten auf einer Adresse sein Standardzertifikat, und ohne `< /dev/null` wartet er endlos auf Eingabe.

Q. Wie gibt man ihn ein?

openssl s_client -connect <host>:443 -servername <host> — eckige Klammern markieren, was wegfallen darf.

Q. Wie viele Optionen lohnen sich?

Hier stehen 6; die vollständige Liste steht in man openssl. Der Befehl gehört zu Netzwerk.

Verwandte Befehle

man-Seite: man openssl-s_client