当前位置: 首页 > news >正文

Tomcat如何开启SSL配置(https)

一、创建证书

     证书用于客户端与服务端安全认证。我们可以使用JDK自带的keytool工具来生成证书。真正在产品环境中使用肯定要去证书提供商去购买,证书认证一般都是由VeriSign认证,官方地址:http://www.verisign.com/cn/

   生成密钥库和证书:

    1、生成服务器证书库

     keytool -validity 365 -genkey -v -alias server -keyalg RSA -keystore F:\ssl\server.keystore              //在F盘中,先创建一个空ssl文件夹

     "-validity 365":设置证书的有效日期

      2、生成客户端证书库:

       keytool -validity 365 -genkeypair -v -alias client -keyalg RSA -storetype PKCS12 -keystore F:\ssl\client.p12

 

    3、从客户端证书库中导出客户端证书

          keytool -export -v -alias client -keystore F:\ssl\client.p12 -storetype PKCS12 -rfc -file F:\ssl\client.cer

 

 

    4、从服务器证书库中导出服务器证书

          keytool -export -v -alias server -keystore F:\ssl\server.keystore  -rfc -file F:\ssl\server.cer

 

     5、生成客户端信任证书库(由服务端证书生成的证书库)

         keytool -import -v -alias server -file F:\ssl\server.cer -keystore F:\ssl\client.truststore 

 

   6、将客户端证书导入到服务器证书库(使得服务器信任客户端证书)

         keytool -import -v -alias client -file F:\ssl\client.cer -keystore F:\ssl\server.keystore

 

   7、查看证书库中的全部证书

        keytool -list -keystore F:\ssl\server.keystore

 以上所有输入密码都是自定义设置为:123456。如果不想每次执行命令都输入命令可以加上"-storepass 123456"

如:keytool -list -keystore F:\ssl\server.keystore -storepass 123456

二、Tomcat配置:

(1).server.keystore文件放到tomcat的安装目录下的conf目录,: D:\Tomcat_7.0.47\conf

(2).修改tomcat目录下的server.xml文件

添加如下内容:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" maxThreads="150" scheme="https" secure="true"

   clientAuth="true" sslProtocol="TLS" truststoreType='JKS'

   keystoreFile="conf/server.keystore" keystorePass="123456"

   truststoreFile="conf/server.keystore" truststorePass="123456"/>

注释下内容:

<!--

    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"

           maxThreads="150" scheme="https" secure="true"

           clientAuth="false" sslProtocol="TLS"/>

-->

三、客户端浏览器证书导入:

 这里需要导入两个文件,客户端证书库client.p12文件和服务端证书server.cer文件

客户端证书库client.p12导入:

双击client.p12文件按提示向导执行

输入私钥密码:

    下一步,选择第一个自动选择证书存储选项,下一步,按向导完成

服务端证书server.cer文件导入:

 

四、测试

       启动tomcat。双击tomcat/bin文件夹中的startup.bat

      在浏览器中输入 https://localhost:8443 出现如下界面,则表示https 8443端口配置成功

 

备注:一般Tomcat默认的SSL端口号是8443,但是对于SSL标准端口号是443,这样在访问网页的时候,直接使用https而不需要输入端口号就可以访问,如https://ip/

转载于:https://www.cnblogs.com/sishang/p/6600577.html

相关文章:

  • springMVC的一些配置解析
  • Spring4-三种方式注入值到 bean 属性
  • maven 打包时提示 软件包 xxxxxxx 不存在
  • poj1753-Flip Game BFS+位运算
  • 对 Git 分支 master 和 origin/master 的一些认识
  • 不要做干自己没时间做的事
  • @Not - Empty-Null-Blank
  • vagrant学习笔记
  • jquery widgets 弹框
  • Linux系统管理命令之权限管理
  • ReactNative开发常用的三方模块
  • Linq to entity 执行多个字段排序的方法
  • maven学习:java编译插件与去除测试插件
  • 机器的自我进化
  • 取汉子拼音首字母的VB.Net方法
  • 「前端早读君006」移动开发必备:那些玩转H5的小技巧
  • Create React App 使用
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • javascript从右向左截取指定位数字符的3种方法
  • Javascript弹出层-初探
  • Java精华积累:初学者都应该搞懂的问题
  • Java应用性能调优
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 服务器之间,相同帐号,实现免密钥登录
  • 回顾2016
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 前端之Sass/Scss实战笔记
  • 日剧·日综资源集合(建议收藏)
  • 小程序开发中的那些坑
  • 数据可视化之下发图实践
  • ​flutter 代码混淆
  • ​iOS安全加固方法及实现
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (ibm)Java 语言的 XPath API
  • (二)c52学习之旅-简单了解单片机
  • (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  • (转)Oracle存储过程编写经验和优化措施
  • (转)编辑寄语:因为爱心,所以美丽
  • (转)利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载 【反射】...
  • (转载)微软数据挖掘算法:Microsoft 时序算法(5)
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .NET 4.0中的泛型协变和反变
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .NET学习全景图
  • @Transactional 竟也能解决分布式事务?
  • [ C++ ] STL---string类的模拟实现
  • [ solr入门 ] - 利用solrJ进行检索
  • [ vulhub漏洞复现篇 ] Django SQL注入漏洞复现 CVE-2021-35042
  • [AIGC 大数据基础]hive浅谈
  • [AIGC] Java 和 Kotlin 的区别
  • [Android Pro] AndroidX重构和映射