У меня Tomcat8 работал нормально на порту 8080, но теперь я пытаюсь включить https в 8443, и, хотя журналы выглядят нормально, он не работает (даже в 8080 без https прямо сейчас).
Моя система - Ubuntu 17.10, и я использую Tomcat 8.5.21.
Что я сделал:
Получите сертификат Let's Encrypt (он отлично работает в моем Apache) и создайте хранилище ключей JKS.
Обновил мой server.xml
разъем с:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11NioProtocol"
SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLSv1.2"
keyAlias="tomcat"
keystoreType="JKS" keystoreFile="/etc/letsencrypt/live/sydomain/MyDSKeyStore.jks"
keystorePass="mypassword" />
Установил APR и убедился, что <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
присутствовал на моем server.xml
(пропало предупреждение о APR в логах)
Исправлена ошибка, говорящая Невозможно восстановить ключ делая у меня хранилище ключей и пароль ключа одинаковы.
Перезапустил службу tomcat8 (также пытался перезагрузить сервер).
Мой catalina.out
для start
процесс показывает:
22 января 2018 г. 10:32: 53.795 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Версия сервера: Apache Tomcat / 8.5.21 (Ubuntu)
22 января 2018 г. 10: 32: 53.801 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Сервер построен: 13 октября 2017 г., 11:06:51 UTC
22 января 2018 г. 10: 32: 53.802 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Номер сервера: 8.5.21.0 22 января 2018 г. 10: 32: 53.807 INFO [main] org.apache.catalina .startup.VersionLoggerListener.log Имя ОС: Linux
22 января 2018 г. 10: 32: 53.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Версия ОС: 4.13.0-25-generic
22 января 2018 г. 10:32: 53.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Архитектура: amd64
22 января 2018 г. 10:32: 53.807 INFO [основная] org.apache.catalina.startup.VersionLoggerListener.log Домашняя страница Java: / usr / lib / jvm / java-8-openjdk-amd64 / jre
22 января 2018 г. 10:32: 53.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Версия JVM: 1.8.0_151-8u151-b12-0ubuntu0.17.10.2-b12
22 января 2018 г. 10:32: 53.807 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Поставщик JVM: Oracle Corporation
22 января 2018 г. 10:32: 53.807 ИНФОРМАЦИЯ [основная] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: / var / lib / tomcat8
22 января 2018 г. 10:32: 53.808 ИНФОРМАЦИЯ [главная] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: / usr / share / tomcat8
22 января 2018 г. 10:32: 53.810 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Аргумент командной строки: -Djava.util.logging.config.file = / var / lib / tomcat8 / conf / logging .properties
22 января 2018 г. 10:32: 53.810 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Аргумент командной строки: -Djava.util.logging.manager = org.apache.juli.ClassLoaderLogManager
22 января 2018 г. 10:32: 53.810 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Аргумент командной строки: -Djava.awt.headless = true
22 января 2018 г. 10:32: 53.811 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Аргумент командной строки: -XX: + UseConcMarkSweepGC
22 января 2018 г. 10:32: 53.812 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Аргумент командной строки: -Djdk.tls.ephemeralDHKeySize = 2048
22 января 2018 г. 10:32: 53.812 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Аргумент командной строки: -Djava.protocol.handler.pkgs = org.apache.catalina.webresources
22 января 2018 г. 10:32: 53.812 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Аргумент командной строки: -Dcatalina.base = / var / lib / tomcat8
22 января 2018 г. 10:32: 53.812 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Аргумент командной строки: -Dcatalina.home = / usr / share / tomcat8
22 января 2018 г. 10:32: 53.813 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Аргумент командной строки: -Djava.io.tmpdir = / tmp / tomcat8-tomcat8-tmp
22 января 2018 г. 10: 32: 53.814 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Загружена собственная библиотека Apache Tomcat [1.2.14] на основе APR с использованием версии APR [1.6.2].
22 января 2018 г. 10: 32: 53.814 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Возможности APR: IPv6 [true], sendfile [true], accept filters [false], random [true].
22 января 2018 г. 10: 32: 53.815 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Конфигурация APR / OpenSSL: useAprConnector [false], useOpenSSL [true]
22 января 2018 г. 10:32: 53.824 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL успешно инициализирован [OpenSSL 1.0.2g 1 марта 2016 г.]
22 января 2018 г. 10: 32: 54.087 INFO [main] org.apache.coyote.AbstractProtocol.init Инициализация ProtocolHandler ["http-nio-8080"]
22 января 2018 г. 10: 32: 54.133 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Использование общего селектора для записи / чтения сервлета
22 января 2018 г. 10:32: 54.148 INFO [main] org.apache.coyote.AbstractProtocol.init Инициализация ProtocolHandler ["https-openssl-nio-8443"]
Я также попытался включить информацию отладки SSL с помощью -Djavax.net.debug=ssl
на JAVA_OPTS
и он показывает много информации, но ничего похожего на ошибку или предупреждение.
Очевидно, мой сервер работает, если я это сделаю netstat -plntu
Я вижу:
tcp6 0 0 :::8080 :::* LISTEN 2843/java
tcp6 0 0 :::8443 :::* LISTEN 2843/java
Но он не отвечает ни в
Порты брандмауэра открыты (8080 работал ранее, а я только что открыл 8443 таким же образом)
Есть подсказка, что еще я могу проверить? Я искал часами и безуспешно пробовал все, что нашел ...