PKI及SSL协议分析
实验简介
实验所属系列:安全协议应用与分析/网络安全与防护
实验对象:本科/专科信息安全专业
相关课程及专业:信息网络安全概论、网络攻击与防御技术、计算机网络
实验时数(学分):2学时
实验类别:实践实验类
实验目的
通过该实验了解和掌握证书服务的安装,理解证书的发放过程,掌握在WEB服务器上配置SSL, 使用HTTPS协议访问网站以验证结果,最后对HTTPS协议进行分析。
预备知识
本实验要求实验者具备如下的相关知识。
PKI
PKI是Public Key Infrastructure的缩写,是指用公钥概念和技术来实施和提供安全服务的具有普适性的安全基础设施。PKI是由硬件、软件、策略和人构成的系统,当完善实施后,能够为敏感通信和交易提供一套信息安全保障,包括保密性、完整性、真实性和不可否认。
PKI的基本组成,完整的PKI系统必须具有权威认证机构(CA)、数字证书库、密钥备份及恢复系统、证书作废系统、应用接口(API)等基本构成部分,构建PKI也将围绕着这五大系统来着手构建。
数字证书,是互联网通讯中标志通讯各方身份信息的一系列数据,提供了一种在Internet上验证身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。它是由一个由权威机构-----CA机构,又称为证书授权(Certificate Authority)中心发行的,人们可以在网上用它来识别对方的身份。
HTTPS
HTTPS(Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
实验环境
本实验中自己指定CA服务器与申请证书的网站。
实验过程中建议使用IE浏览器,如果不使用IE,可能会导致后续实验过程中证书不能下载。
实验步骤一
任务一:搭建CA服务器
1、远程桌面方式登录到CA服务器,在CMD下查看本机IP地址:
2、安装证书服务--“开始”->>“控制面板”->>“添加或删除程序”,以打开添加或删除程序对话框:
依次点击:“添加删除windows组件”,在组件向导中选中“应用程序服务器”与“证书服务”,先不要点击下一步:
双击“应用程序服务器”,选中“ASP.NET”与“Internet信息服务(IIS)”,如下图:
点击“确定”开始安装,在出现的对话框中选择“独立根”,继续安装过程
选择相关的参数,如下图:
下一步后,会出现证书数据库的相关设置,不用修改,继续下一步:
单击下一步后进行安装,在安装过程中会提示“输入磁盘”,按照安装IIS的方式,单击“浏览”、找到文件,确定完成安装。
Internet信息服务(IIS)”,找到并打开:
右键“默认网站”,选择“属性”:
会出现如下属性对话框,在对话框中IP地址选择为本机IP(一般IP已经存在,不用手工输入),并点击确定:
打开浏览器输入 http://10.1.1.245/certsrv/ 可以浏览证书服务器, 至此,证书服务器搭建完成。
实验步骤二
任务二:搭建HTTPS服务器
1、证书申请
登录到要搭建https服务的“网站”主机,查看IP:、
按照搭建CA服务器的方法安装IIS,区别是只选择“应用程序服务器”,如下图:
安装完成后,打开IIS,右键“默认网站”,选择“属性”:
在“默认网站属性”中选择“目录安全性”标签,点击“服务器证书”:
会出现安装向导,点击下一步:
出现如下对话框,保持默认选项“新建证书”不动,继续下一步:
继续保持默认选项,单击下一步:
填写单位与部门信息:
填写公用名称,由于在本环境中没有使用DNS服务器,没有域名因此使用IP地址访问,在公用名称中输入本机的IP地址,如果名称错误,后面过程中会出现问题,因此应仔细核对:
在下一步中输入证书的相关信息:
接下来申请证书。
打开浏览器,输入刚才我们搭建的证书服务器地址:
Http://10.1.1.245/certsrv/ (在实验中根据自己情况填写IP),在证书服务页面点击“申请一个证书”
在下图的页面中点击“高级证书申请”:
在出现的页面中选择第二个“使用base64编码的CMC……”
打开前面步骤建立的文本文件,将文本文件的内容复制到页面中,并提交:
2、证书的颁发
证书的颁发在证书服务器中操作,接下来的操作是证书审核员的角色,切换到CA服务器,点击“开始”>>“管理工具”>>“证书颁发机构”:
可以在挂起的申请中看到刚才我们的申请:
3、下载并应用证书
本操作是网站主机上。
可以看到,证书已经审核通过,可以下载了:
点击“保存的申请证书”,进入到下一页面:
选择“Base 64编码”,并点击“下载证书”:
将证书保存到桌面,以便查找,可以看到桌面上的证书文件。
再进入到默认网站属性,选择“目录安全性”,单击“服务器证书”:
进入Web服务器证书向导,点击下一步:
在“处理挂起请求”中选择“浏览”,选择刚才下载的证书文件,并打开,下一步,使用默认的443端口,点击下一步:
继续下一步,完成向导。
打开默认网站属性,选择“目录安全性”标签,单击“编辑”
选择“要求安全通道”,确定:
实验步骤三
任务三:访问HTTPS服务器
在“CA服务器”中打开已经申请了HTTPS服务的网站:
输入https://10.1.1.196 (按照实际情况),会出现一个证书安全问题的确认,单击“是”,进行浏览
可以看到能够通过HTTPS协议浏览。
分析与思考
1.通过本实验,论述本实验中有哪些角色?他们的任务分别是什么?
CA服务器,任务建立SSL加密通道
网站主机,任务申请HTTPS服务的网站
2.对数据包进行分析,比较使用HTTP和HTTPS有什么不同?
http使用的是80端口,https使用的是443端口。http的连接很简单,是无状态的,而HTTPS协议是由SSL和HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。HTTPS安全超文本传输协议是一个安全通信通道,基于HTTP开发,用于在客户计算机和服务器之间交换信息。http 是超文本传输协议,信息是明文传输,https则是 具有安全性的ssI加密传输协议。简单来说它是HTTP的安全版。https://前缀表明是用SSL (安全套接字)加密的,你的电脑与服务器之间收发的信息传输将更加安全。https协议需要申请证书,一般免费证书很少,需要交费,Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。区别统计: HTTP是不安全的,而HTTPS是安全的; HTTP标准端口是80,而HTTPS的标准端口是443;在网络模型中,HTTP工作于应用层,而HTTPS工作在传输层; HTTP无需证书,而HTTPS需要认证证书。