我在centos7上安装了Apache Tomcat/7.0.76。我想在 tomcat 上启用 SSL。我有根证书、中级证书、域证书。像这样
85163c004aa3625d.crt
gd_bundle-g2-g1.crt
gdig2.crt.pem
root.crt
private.key
然后我运行以下命令,
keytool -import root -keystoretesting.jks -trustcacerts -file tomcat/root.crt
keytool -import -keystoretesting.jks -trustcacerts -file tomcat/gd_bundle-g2-g1.crt
keytool -import -keystore test.jks -trustcacerts -文件 tomcat/85163c004aa3625d.crt
然后我将 server.xml 编辑为
<\连接器端口=“8443”协议=“org.apache.coyote.http11.Http11NioProtocol”connectionTimeout=“20000”redirectPort=“8443”SSLEnabled=“true”方案=“https”安全=“true”sslProtocol=“TLS " keystoreFile="/opt/tomcat/testingibay.jks" keystorePass="tomcat" \>
但后来我保存了该文件并重新启动了 tomcat 服务, https://test.testing.local:8443没有加载,但是我可以加载http://test.testing.local:8080
当我运行 ./configtest.sh 时,它给出使用 CATALINA_BASE: /opt/tomcat 使用 CATALINA_HOME: /opt/tomcat 使用 CATALINA_TMPDIR: /opt/tomcat/temp 使用 JRE_HOME: /usr 使用 CLASSPATH: /opt/tomcat/bin/bootstrap。 jar:/opt/tomcat/bin/tomcat-juli.jar Jan 29, 2019 10:52:29 PM org.apache.coyote.http11.Http11Protocol 警告:HTTP BIO 连接器已在 Tomcat 8.5.x 中删除。 HTTP BIO 连接器配置已自动切换为使用 HTTP NIO 连接器。 2019年1月29日10:52:29 PM org.apache.catalina.startup.VersionLoggerListener日志信息:服务器版本:Apache Tomcat/8.5.37 2019年1月29日10:52:29 PM org.apache.catalina.startup.VersionLoggerListener日志信息:服务器构建:2018年12月12日12:07:02 UTC 2019年1月29日10:52:29 PM org.apache.catalina.startup.VersionLoggerListener日志信息:服务器编号:8.5.37.0 2019年1月29日10:52 :29 PM org.apache.catalina.startup.VersionLoggerListener 日志信息:操作系统名称:Linux 2019 年 1 月 29 日 10:52:29 PM org.apache.catalina.startup.VersionLoggerListener 日志信息:操作系统版本:3.10.0-957.1。 3.el7.x86_64 2019年1月29日10:52:29 PM org.apache.catalina.startup.VersionLoggerListener日志信息:架构:amd64 2019年1月29日10:52:29 PM org.apache.catalina.startup.VersionLoggerListener日志信息:Java主页:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.201-2.6.16.1.el7_6.x86_64/jre 2019年1月29日下午10:52:29 org.apache.catalina.startup .VersionLoggerListener 日志信息:JVM 版本:1.7.0_201-mockbuild_2018_11_19_16_10-b00 2019 年 1 月 29 日 10:52:29 PM org.apache.catalina.startup.VersionLoggerListener 日志信息:JVM 供应商:Oracle Corporation 2019 年 1 月 29 日 10:52: 29 下午 org.apache.catalina.startup.VersionLoggerListener 日志信息:CATALINA_BASE:/opt/tomcat 2019 年 1 月 29 日 10:52:29 下午 org.apache.catalina.startup.VersionLoggerListener 日志信息:CATALINA_HOME:/opt/tomcat 1 月 29 日,2019 年 10:52:29 PM org.apache.catalina.startup.VersionLoggerListener 日志信息:命令行参数:-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 2019 年 1 月 29 日 10:52:29 PM org.apache.catalina.startup.VersionLoggerListener 日志信息:命令行参数:-Djdk.tls.ephemeralDHKeySize=2048 2019 年 1 月 29 日 10:52:29 PM org.apache.catalina.startup.VersionLoggerListener 日志信息:命令行参数: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources 2019 年 1 月 29 日 10:52:29 PM org.apache.catalina.startup.VersionLoggerListener 日志信息:命令行参数:-Dorg.apache.catalina.security .SecurityListener.UMASK=0027 Jan 29, 2019 10:52:29 PM org.apache.catalina.startup.VersionLoggerListener 日志信息:命令行参数:-Dignore.endorsed.dirs= Jan 29, 2019 10:52:29 PM org .apache.catalina.startup.VersionLoggerListener 日志信息:命令行参数:-Dcatalina.base=/opt/tomcat Jan 29, 2019 10:52:29 PM org.apache.catalina.startup.VersionLoggerListener 日志信息:命令行参数: -D卡塔琳娜。home=/opt/tomcat 2019年1月29日10:52:29 PM org.apache.catalina.startup.VersionLoggerListener日志信息:命令行参数:-Djava.io.tmpdir=/opt/tomcat/temp 2019年1月29日10 :52:29 PM org.apache.catalina.core.AprLifecycleListenerlifecycleEvent 信息:在 java.library.path 上找不到基于 APR 的 Apache Tomcat Native 库,该库允许在生产环境中实现最佳性能:[/usr/java/packages/ lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib] 2019 年 1 月 29 日 10:52:30 PM org.apache.coyote.AbstractProtocol init INFO: 初始化 ProtocolHandler ["http-nio-8080" ] 2019 年 1 月 29 日 10:52:30 PM org.apache.catalina.core.StandardService initInternal 严重:无法初始化连接器 [Connector[org.apache.coyote.http11.Http11Protocol-8080]] org.apache.catalina.LifecycleException :无法在 org.apache.catalina.core.StandardService 的 org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:112) 初始化组件 [Connector[org.apache.coyote.http11.Http11Protocol-8080]] .initInternal(StandardService.java:552) 在 org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107) 在 org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:875) 在 org. apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107) 在 org.apache.catalina.startup.Catalina.load(Catalina.java:638) 在 org.apache.catalina.startup.Catalina.load(Catalina. java:661)在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)在java.lang .reflect.Method.invoke(Method.java:606) 在 org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:309) 在 org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:500) )引起:org.apache.catalina.LifecycleException:协议处理程序初始化在 org.apache.catalina.connector.Connector.initInternal(Connector.java:995) 处失败,在 org.apache.catalina.util.LifecycleBase.init(LifecycleBase. java:107) ... 12 更多 原因:java.net.BindException: 地址已在 sun.nio.ch.Net.bind0(Native Method) at sun.nio.ch.Net.bind(Net.java) 使用:463)在sun.nio.ch.Net.bind(Net.java:455)在sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)在sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor。 java:74) 在 org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:219) 在 org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1087) 在 org.apache .tomcat.util.net.AbstractJsseEndpoint.init(AbstractJsseEndpoint.java:265) 在 org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:581) 在 org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java :68)在组织。apache.catalina.connector.Connector.initInternal(Connector.java:993) ... 13 更多
一月 29, 2019 10:52:30 PM org.apache.coyote.AbstractProtocol init INFO: 初始化 ProtocolHandler ["https-jsse-nio-8443"] 一月 29, 2019 10:52:31 PM org.apache.catalina.core .StandardService initInternal 严重:无法初始化连接器 [Connector[HTTP/1.1-8443]] org.apache.catalina.LifecycleException:无法初始化 org.apache.catalina.util 处的组件 [Connector[HTTP/1.1-8443]]。 LifecycleBase.init(LifecycleBase.java:112) 在 org.apache.catalina.core.StandardService.initInternal(StandardService.java:552) 在 org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107) 在 org .apache.catalina.core.StandardServer.initInternal(StandardServer.java:875) 在 org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107) 在 org.apache.catalina.startup.Catalina.load(Catalina) .java:638) 在 org.apache.catalina.startup.Catalina.load(Catalina.java:661) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57 )在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)在java.lang.reflect.Method.invoke(Method.java:606)在org.apache.catalina.startup.Bootstrap.load(Bootstrap.java: 309) 在 org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:500) 引起:org.apache.catalina.LifecycleException:协议处理程序初始化在 org.apache.catalina.connector.Connector.initInternal(Connector) 失败.java:995) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107) ... 12 更多 原因:java.lang.IllegalArgumentException:别名 [null] 无法识别位于以下位置的键条目org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:115) 在 org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl(AbstractJsseEndpoint.java:86) 在 org.apache.tomcat.util。 net.NioEndpoint.bind(NioEndpoint.java:244) 在 org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1087) 在 org.apache.tomcat.util.net.AbstractJsseEndpoint.init(AbstractJsseEndpoint. java:265) 在 org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:581) 在 org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java:68) 在 org.apache.catalina.connector.Connector .initInternal(Connector.java:993) ... 13 更多 原因:java.io.IOException: 别名 [null] 无法识别 org.apache.tomcat.util.net.jsse.JSSEUtil.getKeyManagers 上的密钥条目(JSSEUtil.java:261) 在 org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:113) ... 20 更多
一月 29, 2019 10:52:31 PM org.apache.coyote.AbstractProtocol init INFO: 初始化 ProtocolHandler ["ajp-nio-8009"] 一月 29, 2019 10:52:31 PM org.apache.catalina.core.StandardService initInternal 严重:无法初始化连接器 [Connector[AJP/1.3-8009]] org.apache.catalina.LifecycleException:无法初始化 org.apache.catalina.util.LifecycleBase 处的组件 [Connector[AJP/1.3-8009]]。 init(LifecycleBase.java:112) 在 org.apache.catalina.core.StandardService.initInternal(StandardService.java:552) 在 org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107) 在 org.apache .catalina.core.StandardServer.initInternal(StandardServer.java:875) 在 org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107) 在 org.apache.catalina.startup.Catalina.load(Catalina.java :638)在org.apache.catalina.startup.Catalina.load(Catalina.java:661)在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:309)在 org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:500) 引起:org.apache.catalina.LifecycleException:协议处理程序初始化在 org.apache.catalina.connector.Connector.initInternal(Connector.java :995) at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:107) ... 12 更多 原因:java.net.BindException:地址已在 sun.nio.ch.Net.bind0 使用(本机方法)在 sun.nio.ch.Net.bind(Net.java:463) 在 sun.nio.ch.Net.bind(Net.java:455) 在 sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl .java:223) 在 sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) 在 org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:219) 在 org.apache.tomcat。 util.net.AbstractEndpoint.init(AbstractEndpoint.java:1087) 在 org.apache.tomcat.util.net.AbstractJsseEndpoint.init(AbstractJsseEndpoint.java:265) 在 org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java: [581] 在 org.apache.catalina.connector.Connector.initInternal(Connector.java:993) ... 13 更多