独立Tomcat 7中不支持SSL协议

时间:2015-07-15 23:47:59

标签: java tomcat ssl

我在https://tomcat.apache.org/download-70.cgi

下载了tomcat 7的核心二进制发行版

我将存档的内容解压缩为名为tomcat的目录。只要我提供环境变量,这个tomcat二进制文件就可以直接运行。所以我使用脚本来设置JAVA_HOME和CATALINA_HOME,然后使用默认脚本启动服务器:

的Tomcat / bin中/ startup.sh

Using CATALINA_BASE:   ./tomcat
Using CATALINA_HOME:   ./tomcat
Using CATALINA_TMPDIR: ./tomcat/temp
Using JRE_HOME:        /usr/lib/jvm/java-8-oracle
Using CLASSPATH:       ./tomcat/bin/bootstrap.jar:./tomcat/bin/tomcat-juli.jar
...
...
Jul 15, 2015 3:34:46 PM org.apache.tomcat.util.net.jsse.JSSESocketFactory getEnableableProtocols
WARNING: None of the SSL protocols specified are supported by the SSL engine : [TLSv1+TLSv1.1+TLSv1.2]

在我的server.xml中我有

<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               keystoreFile="..." keystorePass="..."
               clientAuth="false" sslProtocol="TLS" 
               sslEnabledProtocols="TLSv1+TLSv1.1+TLSv1.2" 
               address="0.0.0.0"/>

运行服务器时,无法修复此“不支持的协议”。我认为它来自加载提供这些协议的jsse库,但我在/usr/lib/jvm/java-8-oracle/jre/lib/jsse.jar下可以使用jar,我也尝试复制它到tomcat / lib /以确保它最终会出现在类路径上,并且它不起作用。

这些协议出了什么问题,我怎样才能让它们发挥作用?

1 个答案:

答案 0 :(得分:1)

它们以空格或逗号分隔,而不是“+” - 分开。查看文档。您正在使用OpenSSL语法和非OpenSSL连接器。