Es gibt mehrere allgemeine Bereitstellungsmodi für Tomcat unter MS-Windows, wenn HTTPS aktiviert ist:
- Tomcat läuft hinter IIS, OpenSSL wird nicht verwendet
- Tomcat läuft hinter Apache, OpenSSL ist das von Apache verwendete
- Tomcat-Standalone-Server mit JSSE-Connector (Java SSL), OpenSSL wird nicht verwendet
- Tomcat-Standalone-Server mit APR-Connector, OpenSSL wird verwendet
Wenn Sie über einen Standalone-Tomcat-Server verfügen, können Sie durch Überprüfen der Connector-Protokollkonfiguration ermitteln, welche HTTPS-Methode verwendet wird . Die von Apache bereitgestellten Tomcat 6.0-Binärdateien enthalten standardmäßig APR (und damit OpenSSL), obwohl Sie es möglicherweise nicht verwenden (Aktualisierung trotzdem!). Wenn Sie OpenSSL separat installiert haben, ist dies aus Tomcat-Sicht irrelevant (obwohl es möglicherweise von Ihrem Apache oder einem anderen Webserver verwendet wird).
Wenn Sie eine offizielle (Contrib) Apache-2.2-Webserver-Binärdatei verwenden, wird die OpenSSL-Versionsnummer normalerweise im Dateinamen des Installationspakets codiert. Für 2.4 gibt es mehrere verschiedene Paketversionen. Mindestens ein (Apachehaus) dokumentiert die OpenSSL-Version und stellt eine Version bereit, die openssl.exe
Sie ausführen können, auch wenn dies nicht der normale Benutzer ist PATH
, der sich im bin/
Unterverzeichnis der Apache-Installation befindet.
Wenn Sie über "InfoLevel" oder höher verfügen, protokolliert Apache die Versionen mod_ssl und OpenSSL beim Start. Seit 6.0.36 macht Tomcat6 dasselbe ( Fehler # 53057 ).
Um zu sehen, welche DLLs ein laufender Prozess geladen hat, ist Process Explorer praktisch, obwohl es so aussieht, als würde die normale Binärdistribution von Tomcat OpenSSL (und mehr) in einer einzigen DLL ( tcnative-1.dll
) verknüpfen, anstatt ein leicht identifizierbares (und ersetzbares) libssl.dll
/ libcrypto.dll
(oder ähnliches) ) wie es die Konvention über * nix-Systeme ist. (Diese Analyse funktioniert jedoch auf dem Apachehaus Apache httpd.)
Ein ziemlich primitiver, aber zuverlässiger Weg ist die Verwendung find
(oder , falls vorhanden, die Zeichenfolgen ) cmd
anhand einer Eingabeaufforderung:
cd \Program Files\apache-tomcat\bin find "OpenSSL" tcnative-1.dll [...] TLSv1 part of OpenSSL 1.0.1d 5 Feb 2013 SSLv3 part of OpenSSL 1.0.1d 5 Feb 2013 SSLv2 part of OpenSSL 1.0.1d 5 Feb 2013 DTLSv1 part of OpenSSL 1.0.1d 5 Feb 2013
Der Prozess-Explorer tcnative-1.dll
informiert Sie über den Ort eines laufenden Tomcat6-Prozesses, wenn Sie ihn nicht leicht finden können.
Zusammenfassen:
- Prüfen Sie
netstat -abn -p TCP
, was auf 443 zu hören ist (oder welchen HTTPS-Port Sie verwenden). - Überprüfen Sie in Ihrem Connector, ob und wie SSL von Tomcat bereitgestellt wird
- Überprüfen Sie Ihre Webserver-Version und HTTPS-Konfiguration