web配置https

Tomcat8 配置:

1.单向认证,就是传输的数据加密过了,但是不会校验客户端的来源

2.双向认证,如果客户端浏览器没有导入客户端证书,是访问不了web系统的,找不到地址

如果只是加密,我感觉单向就行了。

如果想要用系统的人没有证书就访问不了系统的话,就采用双向

单向配置:
第一步:为服务器生成证书

使用 jdk 的 keytool 为 Tomcat 生成证书,假定目标机器的域名是" localhost ", keystore 文件存放在" C:\tomcat.keystore ",口令为" password ",使用如下命令生成:

sh 复制代码
keytool -genkey -v -alias tomcat -keyalg RSA   -validity 3650  -keystore c:\tomcat.keystore -dname "CN=localhost,OU=cn,O=cn,L=cn,ST=cn,c=cn"
 -storepass password -keypass password 

保存证书到tomcat.cer

sh 复制代码
keytool -export -alias tomcat -keystore c:\tomcat.keystore -file c:\tomcat.cer -storepass password
第二步:配置Tomcat 服务器

打开Tomcat 根目录下的 /conf/server.xml ,找到如下配置段,修改如下:

xml 复制代码
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"  maxThreads="150" scheme="https" secure="true"  
clientAuth="false" sslProtocol="TLS"  keystoreFile="C:/tomcat.keystore" keystorePass="password" />
将默认http转换为https

应用程序的web.xml 可以加上这句话: 具体web系统 (也可是Tomcat下的conf/web.xml)

xml 复制代码
	<!-- Authorization setting for SSL --> 
	<login-config> 
		<auth-method>CLIENT-CERT</auth-method> 
		<realm-name>Client Cert Users-only Area</realm-name> 
	</login-config> 
	
	<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> 

将 URL 映射设为 /* ,这样你的整个应用都要求是 HTTPS 访问,而 transport-guarantee 标签设置为 CONFIDENTIAL 以便使应用支持 SSL。

如果你希望关闭 SSL ,只需要将 CONFIDENTIAL 改为 NONE 即可

参考博客:

http://blog.csdn.net/keketrtr/article/details/52869173
http://blog.csdn.net/zhangxing52077/article/details/72827770

相关推荐
_阿南_1 小时前
项目中新增给AI制定的代码规范
前端·程序员
测试猿实操笔记2 小时前
DNS 通俗讲解:域名 ↔ IP 翻译
网络·网络协议·tcp/ip
名字还没想好☜2 小时前
React 实现暗黑模式切换:localStorage 持久化、SSR 首屏闪烁与跟随系统主题
前端·javascript·react.js·ecmascript·react·next.js
liyuanchao_blog3 小时前
OVN/OVS场景下虚拟机新网卡通过 DHCP 获取 IP 地址的完整过程
网络·网络协议·tcp/ip·云计算
console.log('npc')3 小时前
Git 冲突与 AI 协助指南
前端·人工智能·git·大模型
爱学堂IT分享4 小时前
Cesium可视化系统实战课程-Cesium教程学习
前端
糖墨夕5 小时前
理解大语言模型:Agent 的“大脑”
前端·agent
Rain的Java大神之路5 小时前
JavaWeb开发如何解决跨域问题
java·前端·后端·nginx·web安全·面试·运维开发
uoKent5 小时前
计网中的TCP/UDP协议 特点与联系
网络协议·tcp/ip·udp
cpolar技术支持5 小时前
浏览器也能跑本地 AI:用 Transformers.js + WebGPU 做一个最小推理 Demo,cpolar 给同事远程体验
前端·ai·cpolar·webgpu·transformers.js