Gibt es Werkzeuge oder Mechanismen, die dazu beitragen können, ein von einer Zertifizierungsstelle ausgestelltes SSL-Zertifikat zu validieren, bevor es auf dem Ziel-Webserver installiert wird?Gibt es eine Möglichkeit zu überprüfen, ob das digitale SSL-Zertifikat gültig ist, ohne auf dem Webserver installiert zu werden?
Antwort
Ja, Sie können mit openssl einen Testserver für Ihr Zertifikat mit dem Befehl s_server erstellen. Dies schafft eine minimale SSL/TLS-Server, der 8080 auf HTTP-Anfragen auf Port antwortet:
openssl s_server -accept 8080 -www -cert yourcert.pem -key yourcert.key -CAfile chain.pem
yourcert.pem wird das X.509-Zertifikat, yourcert.key ist Ihr privater Schlüssel und chain.pem enthält die Kette des Vertrauens zwischen Ihrem Zertifikat und einem Stammzertifikat. Ihre Zertifizierungsstelle hätte Ihnen yourcert.pem und chain.pem geben sollen.
Dann OpenSSL s_client verwenden, um eine Verbindung herzustellen:
openssl s_client -connect localhost:8080 -showcerts -CAfile rootca.pem
oder auf Linux:
openssl s_client -connect localhost:8080 -showcerts -CApath /etc/ssl/certs
Achtung: Dieser Befehl überprüft nicht, dass der Hostname des CN (common name) übereinstimmt oder SAN (subjectAltName) Ihres Zertifikats. OpenSSL hat noch keine Routine für die Aufgabe. Es wird in OpenSSL 1.1 hinzugefügt.
Der beste und einfachste Weg, das von Ihrer CA ausgestellte SSL zu validieren, besteht darin, es zu dekodieren.
Hier ist ein hilfreicher Link die Sie tun, wird dazu beitragen, dass: http://www.sslshopper.com/csr-decoder.html
hoffe, das hilft!