Существует несколько распространенных режимов развертывания Tomcat в MS-Windows, если включен HTTPS:
- Tomcat работает за IIS, OpenSSL не используется
- Tomcat работает за Apache, OpenSSL используется Apache
- Автономный сервер Tomcat с соединителем JSSE (Java SSL), OpenSSL не используется
- Автономный сервер Tomcat с разъемом APR, используется OpenSSL
Если у вас есть автономный сервер Tomcat, вы можете определить, какой метод HTTPS используется, проверив конфигурацию протокола соединителя . Apache предоставил бинарные файлы Tomcat 6.0 по умолчанию, включая APR (и, следовательно, OpenSSL), хотя вы, возможно, не используете его (обновите в любом случае!). Кроме того, если у вас установлен OpenSSL отдельно, это не имеет значения с точки зрения Tomcat (хотя он может использоваться вашим Apache или другим веб-сервером).
Если вы используете официальный двоичный файл веб-сервера Apache-2.2 (contrib), номер версии OpenSSL обычно кодируется в имени файла пакета установщика. Для 2.4 есть несколько разных упакованных версий. По крайней мере, один (Apachehaus) документирует версию OpenSSL и предоставляет openssl.exe
возможность для запуска, хотя это может быть не для обычного пользователя, PATH
это в bin/
подкаталоге установки Apache.
Если у вас LogLevel «info» или выше, Apache запустит версии mod_ssl и OpenSSL при запуске. Начиная с 6.0.36, Tomcat6 делает то же самое ( ошибка # 53057 ).
Узнать, какие DLL загружен запущенным процессом, Process Explorer очень удобно, к сожалению, хотя кажется, что обычная бинарная ссылка распространения Tomcat OpenSSL (и более) в одну DLL ( tcnative-1.dll
), а не легко идентифицируемая (и заменяемая) libssl.dll
/ libcrypto.dll
(или аналогичная) ) как соглашение о * nix системах. (Этот анализ будет работать на Apachehaus Apache httpd.)
Тогда довольно примитивный, но надежный способ - использовать find
(или строки, если они у вас уже есть) из cmd
командной строки:
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
Process Explorer сообщит вам местоположение tcnative-1.dll
запущенного процесса tomcat6, если вы не можете его легко найти.
Чтобы подвести итог:
- проверьте,
netstat -abn -p TCP
что прослушивает 443 (или какой порт HTTPS вы используете) - проверьте свой соединитель, чтобы узнать, предоставляет ли Tomcat протокол SSL и каким образом
- проверьте версию своего веб-сервера и конфигурацию HTTPS