安装教程
您当前的位置:帮助中心 > 常见问题 > SSL证书 > 安装教程

Tomcat配置https

点击数:1279 更新时间:2021-01-27

      

1、SSL证书下载

证书成功颁发后,登陆www.zzy.cn->业务管理->SSL证书服务, 查询->下载证书。

 

2、防火墙端口开放说明

(1) https默认端口为443。根据实际需求,您可以选择其他端口,Tomcat配置、防火墙等请同步修改。

(2) 如果您使用的是云服务器,请登录云平台系统,安全组增加TCP-443 端口的入站规则。

(3) 如果windows防火墙有启用,增加开放TCP-443 端口的入站规则。

 

3、备份配置文件

进入Tomcat目录/conf,备份如下文件:web.xmlserver.xml

 

4、上传jks证书tomcat目录/conf下

 

5、配置方式一(Tomcat 5-7推荐):

(1) 本方式,1个端口只能配置1个证书,同一端口如要配置多个证书请您升级Tomcat版本到8+后采用方式二配置。

(2) 支持版本:Tomcat5、Tomcat6、Tomcat7、Tomcat8、Tomcat9,其中

Tomcat5、Tomcat6、Tomcat7只能用本方式,如要支持部署多个证书,不同站点必须监听不同端口;或者升级到Tomcat8+;

Tomcat8、Tomcat9版本可采用本方式配置,但是推荐使用方式二配置;

(3) server.xml配置说明:

打开server.xml,找出port="443"的配置段,替换为如下配置(以下配置了支持HTTPS的二个端口443、8443):

 <Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"

SSLEnabled="true" maxThreads="300" scheme="https" secure="true"  

clientAuth="false" sslProtocol="TLS"

keystoreFile="conf/zzy.cn.jks" keystorePass="Yw6F2t5eG4" keyAlias="www.zzy.cn"/>

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"

SSLEnabled="true" maxThreads="300" scheme="https" secure="true"  

clientAuth="false" sslProtocol="TLS"

keystoreFile="conf/114.com.cn.jks" keystorePass="Yw6F2t5eG4" keyAlias="*.114.com.cn"/>

# 蓝色配置项说明

port:监听端口,推荐使用HTTPS的默认端口443。

protocol,协议,请根据您的Tomcat版本设置:

Tomcat5:只支持Http11Protocol

Tomcat6、Tomcat7:Http11Protocol、Http11NioProtocol 二选一

Tomcat8+:只支持Http11NioProtocol

keystoreFile:JKS证书文件,请注意路径要和实际文件一致。

keystorePass:JSK证书密码,请从证书包的使用说明.txt复制。

keyAlias:证书别名,请设置为您的证书域名。如果是通配符域名证书需要设置为*.域名,例如*.zzy.com。

 

6、配置方式二(Tomcat8+推荐):

(1) 本方式,同一端口支持部署多个SSL证书。Tomcat8+版本,推荐本方式部署。

(2) 支持版本:Tomcat8、Tomcat9、Tomcat10、...

(3) 配置段说明:

打开server.xml,找出port="443"的配置段,替换为如下配置(以下配置了支持HTTPS的二个证书):

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" defaultSSLHostConfigName="*.zzy.cn">

<SSLHostConfig hostName="*.zzy.cn">

<Certificate certificateKeystoreFile="conf/zzy.cn.jks"             

certificateKeystorePassword="Yw6F2t5eG4"

certificateKeyAlias="*.zzy.cn" type="RSA" />

</SSLHostConfig>

<SSLHostConfig hostName="*.114.com.cn">

<Certificate certificateKeystoreFile="conf/114.com.cn.jks"               

certificateKeystorePassword="Yw6F2t5eG4"

certificateKeyAlias="*.114.com.cn" type="RSA" />

</SSLHostConfig>

</Connector>

# 蓝色配置项说明

port:监听端口,推荐使用HTTPS的默认端口443。

defaultSSLHostConfigName:必须配置,设置为默认使用的证书域名(certificateKeyAlias之一)。

certificateKeystoreFile:JKS证书文件,请注意路径要和实际文件一致。

certificateKeystorePassword:JSK证书密码,请从证书包的使用说明.txt复制。

certificateKeyAlias:证书别名,请设置为您的证书域名。如果是通配符域名证书需要设置为*.域名,例如*.zzy.com。

 

7、启动/重启Apache

(1) 请注意查看logs/catalina.out日志,观察是否启动成功。

(2) 浏览器输入https://域名 访问测试网站。

 

8、http自动跳转https配置

(1) 配置自动跳转前,请先用https访问您的网站,确认网站正常显示。

(2) 编辑server.xml:

<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

蓝色部分8443修改为443,修改后:

    <Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" />

 

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

蓝色部分8443修改为443,修改后如图所示:

<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />

 

(3) 编辑web.xml

搜索</welcome-file-list>节点,后面加上这段配置:

    <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>

 

(4) 重启Tomcat服务,输入http://域名,观察是否自动跳转到https://域名。