| 获取证书由于Tomcat和Apache类似,所以证书可以通过 Apache 接口配置,使用证书和私钥文件完成配置 证书安装配置SSL连接器,证书解压至Tomcat安装目录下的conf/ssl目录下,没有ssl目录的创建一个、然后配置同目录(Tomcat安装目录 conf/目录)下的server.xml文件。 找到8443端口这一段,去掉8,替换certificateKeyFile,certificateFile的值。删除另一个参数certificateChainFile,配置好的内容如下,然后重启Tomcat。 <Connector port="443" protocol="org.apache.coyote.http11.Http11AprProtocol" maxThreads="150" SSLEnabled="true" ><UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
 <SSLHostConfig>
 <Certificate certificateKeyFile="D:\apache-tomcat-8.5.23\conf\SSL\niaoyun.com.key" certificateFile="D:\apache-tomcat-8.5.23\conf\SSL\niaoyun.com.crt" type="RSA" />
 </SSLHostConfig>
 </Connector>
 重启没有报错就表示配置成功了,可在浏览器中打开https链接测试。 http自动跳转https的安全配置到 conf目录下的web.xml。在</welcome-file-list>后面,</web-app>,也就是倒数第二段里,加上这样一段 <login-config><!-- Authorization setting for SSL -->
 <auth-method>CLIENT-CERT</auth-method>
 <realm-name>Client Cert Users-only Area</realm-name>
 </login-config>
 <security-constraint>
 <!-- Authorization setting for SSL -->
 <web-resource-collection>
 <web-resource-name>SSL</web-resource-name>
 <url-pattern>/*</url-pattern>
 </web-resource-collection>
 <user-data-constraint>
 <transport-guarantee>CONFIDENTIAL</transport-guarantee>
 </user-data-constraint>
 </security-constraint>
 这步目的是让非ssl的connector跳转到ssl的connector去。所以还需要前往 server.xml进行配置: <Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"
 redirectPort="443" />
 redirectPort改成ssl的connector的端口443,重启后便会生效。 |