文章信息

用Tomcat三步搭建https项目

发布时间:『 2015-10-29 12:57』  文章类别:系统运维  阅读(1034) 评论(0)

先说说使用https的指导思想:

一些网站购买了SSL证书并将其配置到Web服务器上,以为这就算完事儿了。但这只是表明你启用了HTTPS选项,而用户很可能不会注意到。为确保每个用户都从HTTPS中受益,你应该将所有传入的HTTP请求重定向至HTTPS。这意味着任何一个访问你的网站的用户都将自动切换到HTTPS,从那以后他们的信息传输就安全了。

但上述做法还是留下了一个空子:当用户第一次向你的网站发送请求时,他们使用的是普通HTTP,而那时他们可能就已经在传输机密信息了。上述做法还留下了一个“中间人攻击”漏洞(man-in-the-middle hole)。
为进一步加强控制,请启用HTTP严格传输安全协议。这是一种可由服务器发送的特殊的头信息(header),它的含义是:在设定的时限内,你不能通过普通HTTP访问网站,也不能在证书不可靠时通过HTTPS访问网站。二级域名也可以选择包含HSTS。

HSTS是一种简单的服务器头信息,且容易配置。但是要注意在时限结束之前无法撤销设定,因此不要把时限设置得太长。你应该同时使用HSTS和HTTPS重定向,而不是用前者取代后者。

Cookies,包括session cookie,有一个可选的安全标记。它大致的含义是:“不要用普通HTTP连接发送这个cookie” 启用这个安全标记,你的cookie就不会被浏览器的初始HTTP请求发送出去,直到连接切换为HTTPS且不再会被监听为止。


鉴于以上三点要求,我们进行如下测试:

搭建测试环境:Windows 8 ,命令提示符 , apache-tomcat-6.0.35 ,java web 项目 

第一步:为服务器生成证书

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

> keytool -genkey -v -alias tomcat -keyalg RSA   -validity 36500  -keystore d:\tomcat.keystore -dname "CN=localhost,OU=cn,O=cn,L=cn,ST=cn,c=cn" -storepass password -keypass password

这个tomcat.cer是为了解决不信任时要导入的 :

> keytool -export -alias tomcat -keystore d:\tomcat.keystore -file d:\tomcat.cer -storepass password 

第二步:配置Tomcat 服务器 server.xml

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true"  

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

    clientAuth="false" sslProtocol="TLS"    

    keystoreFile="D:/tomcat.keystore" keystorePass="password" />  

第三步:访问

https://localhost:8443/


关键字:  安全  tomcat  https
评论信息
暂无评论
发表评论
验证码: 
当前时间
小主信息

愿历尽千帆,归来仍少年。
3D标签云

Anything in here will be replaced on browsers that support the canvas element

友情链接

Copyright ©2017-2024 uzen.zone
湘ICP备17013178号-3