具有 SSL,TLS 功能的 Web 服务器的认识.pdf
文本预览下载声明
具有SSL/TLS 功能的Web 服务器
作业二
具有SSL/TLS 功能的Web 服务器
姓名:陈清早
学号:PT140015
具有SSL/TLS 功能的Web 服务器
目录
1 详叙在Web 服务器增加SSL/TLS 功能的方法
2 截取客户端访问界面
3 SSL/TLS 协议的分析
3.1 SSL /TLS概况
3.2 握手阶段的详细过程
3.3 记录协议的过程
-1-
具有SSL/TLS 功能的Web 服务器
1 详叙在Web 服务器增加SSL/TLS 功能的方法
SSL/TLS在客户端和服务器之间建立加密通信通道。JAVA通过JSSE(.ssl)提
供了对SSL和TLS 的支持。通过其所提供的一系列API,开发者可以像使用普通Socket一
样使用基于SSL或TLS 的安全套接字,而不用关心 SSL和TLS协议的细节,例如握手的流
程等等。这使利用JAVA开发安全的SSL/TLS服务器或客户端非常容易。
SSL提供的安全质量完全依赖于私钥,私钥是安全证书的基础,而安全证书则是验证服
务器身份的重要因素。
下面主要说一说如何配置SSL/TLS服务器。
Sun在JDK 中提供了一个安全钥匙与证书的管理工具Keytool。Keytool 把钥匙,证书
以及和与它们相关联的证书链储存到一个Keystore,默任的实现Keystore 的是一个文件,
配置一个SSL/TLS服务器需要以下几步:假设服务器的域名是:。1.构建
keystore,以存储证书。2.2.生成一个Certificate Signing Request (CSR),CSR是提供
给证书颁发机构,供证书颁发机构依据其中信息生成证书。3.将CSR提供给证书颁发机构
CA,等待CA颁发证书;知名的CA有Versign,Thawte等。4.在CA等网站上下载CA 的根证
书。5.导入CA 的根证书到keystore 中。6.导入CA颁发的证书到keystore,CA通常不会直
接返回一个文件,而是通过网页或email 以文本形式提供,需要用户自己创建一个文件,再
将文本拷入。这样就完成对服务器的配置,最后为服务器指定这个keystore就可以了。
注意:一定导入正确的CA根证书,最常见的错误就是没有导入或导入错误的CA根证书。
注意:有些客户端,在使用SSL/TLS时必须通过域名来连接服务器,不能通过IP地址来连
接。其所连接的服务器域名和服务器的证书的颁发对象必须相同。例如服务器的域名是
,那么服务器的证书也必须是颁发给 的。
证书颁发机构都会免费提供给用户用于测试的证书和相关的根证书,这种测试用的证书通常
只有14天到30天不等的有效期。
在SSLServerSocket这个类中有一个setNeedClientAuth方法,当这个选项设为true
时,客户端和服务器在协商时,服务器会要求客户端也提供验证信息,如果客户端不能提供,
服务器就会终止会话。将客户端的证书加入到服务器的TrustStore 中,同时将服务器的证
书加入到客户端的TrustStore 中,使客户端和服务器互相信任。
SSL层在TCP层建立了一个加密通道,通过这一层的数据经过了加密,因此达到了保密
的效果。SSL层借助下层协议的通信安全协商出一份加密密钥,并用此密钥来加密HTTP请
求;而TCP层与Web Sever 的443端口建立连接,传递SSL处理后的数据。
2 截取客户端访问界面
安装配置完相关软件,以默认配置启动 tomcat ,在浏览器中输入
http://localhost:8080或者hhttp://michael-pc:8080.
-2-
具有SSL/TLS 功能的Web 服务器
出现上述页面,表明基础的http访问成功搭建.用于tomcat 中配置https
显示全部