Tomcat配置Https证书,证书密码加密存储
一、Tomcat的Https配置
目前因为保证数据在传输时的安全性,大多数公司都使用了https证书。HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。
然而,Tomcat的Connector配置默认只支持明文。不支持证书密码使用密文存储,假如要实现密文存储就需要重写接口。
二、实现加密存储证书密码
1、Tomcat的Https配置如下:
Https配置
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
SSLEnabled=”true” scheme=”https” secure=”true”
keystoreFile=”D:\cert\214080970640194.pfx” keystoreType=”PKCS12″
keystorePass=”214080970640194″
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″/>
2、通过Tomcat中的Https配置可以看到,使用的接口是:
org.apache.coyote.http11.Http11Protocol
接下来我们就是要重写这个接口。代码如下:
上述只是简单演示,没有实现解密这步,直接返回一个正确的密钥。
主要有2个方法:
1、getKeystorePass() 获取密文
2、setKeystorePass(password) 设置解密后密文
将上述代码打包,复制到tomcat的lib目录下,修改https配置的protocol类为
com.cgfbg.tomcat.tomcat_https.MyHttp11Protocol,启动tomcat。
为了演示效果,我们在配置tomcat的配置一个错误的证书密码,在代码直接返回正确密码:
修改后的ps配置
tomcat启动日志如下:
启动成功
以上就是整个过程,有兴趣的小伙伴可以直接实现一下。
有任何看法或者意见,欢迎在评论区留言。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » Tomcat配置Https证书,证书密码加密存储