https服务搭建--Tomcat

1、https搭建需要的资料
https协议是什么这里不具体介绍了,只需知道他是一种安全的访问协议就可以(详细了解参考http://www.linuxde.net/2012/03/8301.html)。实现一次一个https服务访问,需要一个服务提供端(这里以Tomcat为例,以下直接说Tomcat),需要一个服务的访问端(以IE浏览器为例)。在IE通过https访问Tomcat时,需要IE浏览器认可(信任)Tomcat的服务是合法的真实的服务,这个信任的依据就是证书(这里以单项认证为例,也就是IE认可Tomcat,Tomcat不需要认可IE用户的身份)。因此在Tomcat上搭建一个(单项认证)的https服务,需要Tomcat和证书。证书是指CA证书,是由大家都知道的权威机构发行的一个代表身份的文件。


2、https搭建遇到的问题
https服务搭建完成以后,会有两种结果,一种是提示“此网站的安全证书存在问题”,需要点击继续访问才能使用;(图1)

 另一种是直接打开想要的页面,并且地址栏上显示绿色的锁子;(图2)

 。
造成第一种情况的原因是因为IE不能信任Tomcat提供的证书的原因。IE(包括其他的浏览器)在安装时已经内置了现有的权威机构的证书,因此IE可以打开很多大网站的地址直接显示绿色的锁子。
证书的获得分为三种(当前了解到的),第一种是直接到CA机构申请,并付费给CA机构,这种证书可以被IE很好的识别,并显示绿色锁子;第二种是到一些CA机构去申请免费的证书(可以选择https://www.startssl.com),部分功能受限,这种也可以显示绿色的锁子;第三种是通过工具直接生成证书,由于是自己生成的证书,IE不能判断证书的合法性,所以只能提示存在安全问题。
CA证书颁发机构分为根证书机构,代理机构、二级代理机构等等,可以很多层级,并整个级别信息都会写入到证书中。IE验证证书时是按层级进行验证,会先验证最下级的证书是否合法,如果不能验证合法性,将会验证颁发证书的上级机构,一直验证到证书链的最顶端,就是所谓的根证书,如果还是不能验证成功,就会被IE认为是不可信任的。


3、搭建步骤
3.1、用jdk自带keytool生成keystore文件,执行过程中会输入单位信息和密码
keytool -genkey -alias <别名> -keyalg RSA -keystore <文件名> -keysize 2048
该步骤完成以后可以直接把生成的keystore文件配置到tomcat中就可以使用了,显示效果会是第一种情况。

3.2、生成CSR文件,这个文件用来到CA机构换取证书
keytool -certreq -keyalg RSA -alias <别名> -file <生成CSR文件名> -keystore <上一步生成的keystore文件>

3.3、在CA官网上提交CSR文件的内容并申请CA证书,申请成功后会获取到三个证书。(图3)

 

3.4、将从CA申请下来的证书导入到keystore文件中,导入成功后,再访问Tomcat就可以显示绿色小锁子。导入时先导入根证书,再导入中间证书,最后导入网站证书。
keytool -import -alias root -keystore e:/127laochen9.keystore -file C:/Users/lenovo/Desktop/root.crt
keytool -import -alias Intermediate -keystore e:/127laochen9.keystore -file C:/Users/lenovo/Desktop/1_Intermediate.crt
keytool -import -alias 127laochen9 -keystore e:/127laochen9.keystore -file C:/Users/lenovo/Desktop/2_127.laochen9.top.crt

3.5、配置Tomcat中的server.xml文件
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
    maxThreads="150" scheme="https" secure="true" clientAuth="false"
    sslProtocol="TLS" keystoreFile="<keystore文件路径>" keystorePass="<第一步中输入的密码>" />

3.6、访问连接地址验证成功。

扩展连接:

http://www.linuxde.net/2012/03/8316.html

猜你喜欢

转载自hongtanke.iteye.com/blog/2335551