Tomcat 配置 .pfx格式 SSL证书

1.证书来源:

  a. 阿里云或者腾讯云申请免费的证书

  b. JDK生成证书(这种方式生成的证书,用浏览器访问时会显示不受信任的证书,这个是正常情况)

  本教程使用的是阿里申请的免费证书。获得的证书文件如下

其中pfx-password.txt文件中的就是证书密码

2.环境

Windows 10, Tomcat 8, .pfx格式证书

3.Tomcat配置证书

修改Tomcat 目录下conf/server.xml文件

 找到<Connection port="8443"标签,增加如下属性:

 keystoreFile="证书文件路径(相对路径,绝对路径都可以)"

  keystoreType="PKCS12"

 keystorePass="证书密码"

完整的配置如下,其中port属性根据实际情况修改:

<Connector port="8443"

protocol="HTTP/1.1"

SSLEnabled="true"

scheme="https"

secure="true"

keystoreFile="cert/215010603480106.pfx"

keystoreType="PKCS12"

keystorePass="证书密码"

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

修改的地方如图:

4.保存重启Tomcat

5.访问项目https://域名:port ,这里需要注意,这个域名一定要和申请的证书一样,否则将会出现不信任的证书

如:直接输入IP访问,将会出现不信任的证书。如果在本地测试可以修改电脑的HOST文件,把域名解析到本机

6.配置所有的请求都走HTTPS,如:地址栏输入http://baidu.com自动跳转为https://baidu.com

修改Tomcat 目录下/conf/web.xml

在最后(</web-app>标签内)增加如下:

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

7.保存重启Tomcat

posted @ 2019-01-05 14:30  小朋友有很多问号  阅读(151)  评论(0)    收藏  举报