阿里云 SSL 证书服务支持在 CentOS 系统服务器上下载和安装 SSL 证书。本文档介绍CentOS系统下Tomcat8.5或9部署SSL证书的操作说明。
环境准备
操作系统:CentOS 7.6 64-bit
Web 服务器:Tomcat 8.5 或 9
注意Tomcat服务器需要提前安装JDK环境变量。请到Tomcat官网查看推荐的JDK兼容配置。
前提条件
Tomcat服务器证书(包括PFX格式的证书文件和TXT格式的密码文件)已从阿里云SSL证书服务控制台下载。
你申请SSL证书时绑定的域名已经完成DNS解析,并且域名已经指向你的Tomcat服务器的IP地址。
域名解析设置好后,执行ping www.yourdomain.com命令。如果返回您设置的解析主机IP地址,则解析成功。
脚步
1、解压 Tomcat 证书。
注意每次下载证书都会生成一个新的密码,密码只和本次下载的证书匹配。如果需要更新证书文件,还要更新匹配的密码。
2、将下载的证书和密码文件复制到Tomcat的conf目录下。
说明如果需要安装JKS格式证书,可以使用以下命令将PFX格式证书转换为JKS格式。
keytool -importkeystore -srckeystore domain name.pfx -destkeystore domain name.jks -srcstoretype PKCS12 -deststoretype JKS 打开Tomcat/conf/server.xml,在server.xml文件中找到以下参数并进行修改。 <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
#找到上面的参数,去掉这对注释,修改为如下参数,配置默认的HTTPS端口:
<Connector port="80" protocol="HTTP/1.1" #将Connector port修改为80。 connectionTimeout="20000" redirectPort="443" /> #将redirectPort修改为SSL默认端口443,让HTTPS请求转发到443端口。 <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true"> <SSLHostConfig> <Certificate certificateKeystoreFile="cert/keystore.pfx" certificateKeystorePassword="XXXXXXX" certificateKeystoreType="PKCS12" />
#找到上面的参数,去掉这对注释,修改成如下参数:
<Connector port="443" #将Tomcat中默认的HTTPS端口Connector port 8443修改为443。8443端口不可通过域名直接访问、需要在域名后加上端口号;443端口是HTTPS的默认端口,可通过域名直接访问,无需在域名后加端口号。 protocol="org.apache.coyote.http11.Http11NioProtocol" #server.xml文件中Connector port有两种运行模式(NIO和APR),请选择NIO模式(也就是protocol="org.apache.coyote.http11.Http11NioProtocol")这一段进行配置。 maxThreads="150" SSLEnabled="true"> <SSLHostConfig> <Certificate certificateKeystoreFile="/usr/local/tomcat/cert/证书域名.pfx" #此处certificateKeystoreFile代表证书文件的路径,请用您证书的路径+文件名替换证书域名.pfx,例如:certificateKeystoreFile="/usr/local/tomcat/cert/abc.com.pfx" certificateKeystorePassword="证书密码" #此处certificateKeystorePassword为SSL证书的密码,请用您证书密码文件pfx-password.txt中的密码替换,例如:certificateKeystorePassword="bMNML1Df" certificateKeystoreType="PKCS12" /> #证书类型为PFX格式时,certificateKeystoreType修改为PKCS12。 </SSLHostConfig> </Connector> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
#找到上面的参数,去掉这对注释,修改成如下参数:
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" /> #将redirectPort修改为443,让HTTPS请求转发到443端口。
3、保存 server.xml 文件配置。
4、(可选步骤)在web.xml文件底部添加如下内容,自动从HTTP切换到HTTPS。
<security-constraint> <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>
5、重新启动 Tomcat 服务。
执行Tomcat下bin目录下的./shutdown.sh,关闭Tomcat服务。
运行Tomcat下bin目录下的./startup.sh,启动Tomcat服务。
跟进
Tomcat服务重启成功后,您可以在浏览器中输入您的SSL证书绑定的域名https://www.YourDomainName.com来验证证书安装结果。浏览器地址栏显示一个绿色的小锁,表示证书安装成功。
:Tomcat如何部署SSL证书?CentOS系统Tomcat 8.5或9部署SSL证书的操作方法,https://vps.caogenba.com.com/68496.html
如今做站的人不多了,多个朋友多条路子,加入站长论坛和大佬们同道交流,Tips:可以免费打广告哦~ 点击立即加入>>