Tomcat配置自签名https

本文基于keytool命令进行证书生成。


1、为服务器生成证书tomcat.keystore 命令中如果是ip方式访问用-ext SAN=ip:xxx.xxx.xx.xx,如果是域名则用 -ext SAN=dns:www.xxx.com,注意"您的名字与姓氏是什么?"就是你的ip或域名。

keytool -genkey -v -alias tomcat -keyalg RSA -ext SAN=ip:xxx.xxx.xx.xx -validity 36500 -keystore tomcat.keystore

2、为客户端生成证书,双向认证时需要客户端安装该证书,等待第四步成功后将该证书添加到“个人”区域。

keytool -genkey -v -alias mykey -keyalg RSA -validity 36500 -storetype PKCS12 -keystore client.p12

3、将p12文件导出为一个cer文件,因为不能直接将PKCS12格式的证书库导入服务端证书(tomcat.keystore),123456为密码。

keytool -export -alias mykey -keystore client.p12 -storetype PKCS12 -storepass 123456 -rfc -file client.cer

4、让服务器信任客户端证书。

keytool -import -v -file client.cer -keystore tomcat.keystore

5、查看服务器的证书库。(一个是服务器证书,一个是受信任的客户端证书),可以省略。

keytool -list -keystore tomcat.keystore

6、把服务器证书导出为cer文件,然后将该证书添加到“受信任的根证书颁发机构”区域。

keytool -keystore tomcat.keystore -export -alias tomcat -file server.cer


操作完成,在tomcat的server.xml中配置方法如下: 单向认证时需将clientAuth=“false”,双向时设置为clientAuth=“true”,https的默认端口为443,所以port=“443”,当然也可以设置为其他的。

另外,cer转keystone命令,注意设置正确的别名:keytool -import -file server.cer -keystore tomcat.keystore -alias tomcat。

tomcat的server.xml配置

<Connector port="443"
 protocol="org.apache.coyote.http11.Http11NioProtocol"
 SSLEnabled="true"
 maxThreads="150"
 URIEncoding="utf-8"
 scheme="https"
 secure="true"
 clientAuth="true"
 sslProtocol="TLS"
 keystoreFile="c:/keystore/tomcat.keystore"
 keystorePass="123456"
 truststoreFile="c:/keystore/tomcat.keystore"
 truststorePass="123456"
 />

注意:

将 server.cer 导入到浏览器“受信任的根证书颁发机构”区域,这样是为了让浏览器信任服务器。

将 client.p12 导入到浏览器“个人”区域,这样是为了让服务器信任浏览器,访问时会提示选择这个证书。

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

y-辰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值