ralpht
Goto Top

OpenSSL Frage zum s-client

Moin,

ich wollte mal eine interne https Seite mit openssl aufrufen dazu habe ich in der CMD folgendes eingegeben:

openssl s_client -connect meine-ssl-seite.de:443

Ich bekomme auch eine Antwort. In der Ausgabe steht, dass die Zertifikatskette nicht überprüft werden kann.
Ich tippe mal, dass diese Meldung normal ist, da ja das Programm openssl dieses ROOT-Zertifikat nicht in seinem internen Speicher hat.

In der Verzeichnisstrukur ist der Unterordner certs. Dort liegen einige vordefinierte Zertifikate (PEM).

Frage:

Kann man ein ROOT-Zertifikat diesem Speicher hinzufügen? Ich weiß jetzt ehrlich gesagt auch nicht, ob ich mit meiner Vermutung richtig liege, dass dieses Verzeichnis überhaupt der Speicher für ROOT-Zertifikate ist.

Ich glaube mich ganz dunkel daran erinnern zu können, dass man ein ROOT-Zertifikat in der CMD dort importieren kann und dass dann openssl in diesem cert-Ordner eine neue PEM-Datei schreibt. Aber ich kann mich auch täuschen.

Content-Key: 588184

Url: https://administrator.de/contentid/588184

Printed on: April 24, 2024 at 09:04 o'clock

Member: LordGurke
Solution LordGurke Jul 16, 2020 at 08:56:07 (UTC)
Goto Top
Wenn es nur für Testzwecke ist, kannst du dem OpenSSL-Client auch einfach per Parameter den Pfad zum CA-File mitgeben, gegen das verifiziert werden soll.

Tipp noch: Zumindest bei Verbindungen zu Port 443 sollte man auch immer den Parameter "servername=aufgerufenedomain.tld" setzen. Falls der kontaktierte Server mehrere SSL-VHosts betreibt, zeigt er dir sonst schlechtestenfalls das falsche Zertifikat, weil er nicht weiß, welche Seite du aufrufen willst.
Member: RalphT
RalphT Jul 16, 2020 at 09:08:13 (UTC)
Goto Top
Ja danke dir!

Ich hatte das eben zwischenzeitlich mit dem Parameter -CAfile gemacht. Das klappte dann.
Darauf gekommen bin bei diesem Thread:

Forum stack exchange

Aber guter Tipp mit dem Parameter servername. Das ist hier nämlich der Fall.