证书可以先在阿里云的SSL证书管理台申请,待审核之后便可以下载对应的Tomcat证书,证书中包含两个文件,一个pfx格式的证书,一个txt格式的密码文件。在Tomcat的安装目录下新建一个cert文件夹存放pfx证书。
1、环境:阿里云centos7.5+tomcat8+宝塔linux
2、Tomcat配置文件server.xml,在keystoreFile和keystorePass处修改成正确的证书地址和密码:
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" />
<Connector port="443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="/www/server/tomcat/cert/证书.pfx"
keystoreType="PKCS12"
keystorePass="txt文件中的密码"
clientAuth="false"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />
https默认的端口号是443,如果资源本身被设置了必须要https方式访问,此时Tomcat会自动重定向到这个redirectPort设置的https端口
3、阿里云ECS服务器和宝塔linux上都需要放行一下端口,否则访问不了
4、备注:在本地windows系统的Tomcat上测试没有成功,原因可能是域名指向的IP服务器上做了一层转发到本地之后引起的(我使用了frp做了一层转发到我本地服务器,类似于nginx)