Tomcat配置SSL证书实现https(内网ip访问)

在Tomcat的bin目录下打开命令窗口(以下操作均在服务器上完成)

1.制作服务器端秘钥库

在命令窗口中输入下面命令:

keytool -genkey -v -alias tomcat -keyalg RSA -keystore D:\tomcat.keystore -validity 36500 -ext SAN=dns:localhost,ip:XXX.XXX.XXX.XXX

ip地址填写服务器的ip。

2.制作客户端秘钥库

在命令窗口中输入下面命令:

keytool -genkey -v -alias mykey -keyalg RSA -storetype PKCS12 -keystore D:\mykey.p12 -validity 36500

3.客户端证书导入服务端密钥库

由于不能直接将p12导入,需要先从客户端密钥库导出证书,再将导出的证书导入服务端密钥库。

3.1导出证书

在命令窗口中输入下面命令:

keytool -export -alias mykey -keystore D:\mykey.p12 -storetype PKCS12 -storepass 123456 -rfc -file D:\mykey.cer

3.2导入服务端密钥库

在命令窗口中输入下面命令:

keytool -import -v -file D:\mykey.cer -keystore D:\tomcat.keystore

4.导出服务端密钥库证书

在命令窗口中输入下面命令:

keytool -keystore D:\tomcat.keystore -export -alias tomcat -file D:\tomcat.cer

5.配置tomcat,找到conf目录下的server.xml文件,增加如下配置

<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="D:/tomcat.keystore"
keystorePass="123456" />

注意事项:

  1. 这里配置的443端口要根据网站的实际情况进行配置,如果原来的网站是默认端口(80),则配置443。
  2. 如果原来的访问地址中有端口号(8089),升级为https后,还想用原来的8089端口,那么这里的443就改为8089。同时访问地址就变成了htts://XXX.XXX.XXX.XXX:8089。
  3. 若想满足原有的网站地址(http://XXX.XXX.XXX.XXX:8089)访问后自动跳转到htts://XXX.XXX.XXX.XXX:8089,参照下图进行配置,同时操作此文档的第八步(web.xml修改)。

6.安装客户端密钥库

双击mykey.p12文件

7.安装服务端证书

双击打开tomcat.cer文件

8.修改web.xml配置,实现http自动跳转https

<login-config>

<!-- Authorization setting for SSL -->

<auth-method>CLIENT-CERT</auth-method>

<realm-name>Client Cert Users-only Area</realm-name>

</login-config>

<security-constraint>

<!-- Authorization setting for SSL -->

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

9.防火墙开通访问端口

备注:

如果找不到原来的入站规则,也可以自己新增入站规则。

10.重启tomcat服务

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值