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服务器

本任务初步了解CA服务器的原理和配置过程。操作都在CA服务器上。

1、远程桌面方式登录到CA服务器,在CMD下查看本机IP地址:

      

 

 

      注:在本例中CA服务器IP为10.1.1.245,但在做实验过程中,IP可能会出现变动,要记住自己CA的IP,在后面实验过程中填写自己的IP,否则实验可能失败。

2、安装证书服务

      依次点击:“开始”->>“控制面板”->>“添加或删除程序”,以打开添加或删除程序对话框:

      

 

      依次点击:“添加删除windows组件”,在组件向导中选中“应用程序服务器”与“证书服务”,先不要点击下一步:

    

 

 

     选中证书服务时选择是

 

     双击“应用程序服务器”,选中“ASP.NET”与“Internet信息服务(IIS)”,如下图:

      

 

      点击“确定”开始安装,在出现的对话框中选择“独立根”,继续安装过程

      

 

      选择相关的参数,如下图:

      

 

      下一步后,会出现证书数据库的相关设置,不用修改,继续下一步:

      

 

      单击下一步后进行安装,在安装过程中会提示“输入磁盘”,按照安装IIS的方式,单击“浏览”、找到文件,确定完成安装。

      (浏览到桌面-win2003-I386目录下)

      在安装完成后会提示启用Active Server Page,点击“确定”

      

     

 

       安装完成后会发现有管理工具中多了“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……”

     

      打开前面步骤建立的文本文件,将文本文件的内容复制到页面中,并提交:

      

 

 

 (这里是在出现的网页中选择[高级证书申请],如图所示,在出现的网页中单击第二个选项[base64 编码].打开刚才IIS证书向导生成的请求文件,(默认路径     C:\certreq.txt), 复制并粘贴文件内容到第一个文本框,如下图所示,单击[提交]按钮,转到完成提交后的页面。从之前创建的文件中查找的申请文本,然后写入的保存的申请里面)

 

      然后会出现等待管理员审核批准的页面。

      

 

 

2、证书的颁发

      证书的颁发在证书服务器中操作,接下来的操作是证书审核员的角色,切换到CA服务器,点击“开始”>>“管理工具”>>“证书颁发机构”:

      

 

      可以在挂起的申请中看到刚才我们的申请:

      

 

 

 

 

      右键所有任务,选择“颁发”:

      

 

      颁发后可以在“颁发的证书”中看到,如下图:

      

 

3、下载并应用证书

      本操作是网站主机上。

     

 

      可以看到,证书已经审核通过,可以下载了:

      

 

       点击“保存的申请证书”,进入到下一页面:

      

 

      选择“Base 64编码”,并点击“下载证书”:

      

 

       将证书保存到桌面,以便查找,可以看到桌面上的证书文件。

       再进入到默认网站属性,选择“目录安全性”,单击“服务器证书”:

      

 

      进入Web服务器证书向导,点击下一步:

      

 

      

 

 

 

      

        在“处理挂起请求”中选择“浏览”,选择刚才下载的证书文件,并打开,下一步,使用默认的443端口,点击下一步:

      

 

      继续下一步,完成向导。

      打开默认网站属性,选择“目录安全性”标签,单击“编辑”

      

      选择“要求安全通道”,确定:

      

实验步骤三

访问HTTPS服务器

      在“CA服务器”中打开已经申请了HTTPS服务的网站:

      

      输入https://10.1.1.196 (按照实际情况),会出现一个证书安全问题的确认,单击“是”,进行浏览:

      

 

 

       可以看到能够通过HTTPS协议浏览。

      

 

 

分析与思考

1.通过本实验,论述本实验中有哪些角色?他们的任务分别是什么?

2.对数据包进行分析,比较使用HTTP和HTTPS有什么不同?

1.CA服务器,负责建立SSL加密通道,网站主机,负责申请HTTPS服务的网站
2.Http:超文本传输协议(Http,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。设计Http最初的目的是为了提供一种发布和接收HTML页面的方法。它可以使浏览器更加高效。Http协议是以明文方式发送信息的,如果黑客截取了Web浏览器和服务器之间的传输报文,就可以直接获得其中的信息。

Https:是以安全为目标的Http通道,是Http的安全版。Https的安全基础是SSL。SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层:SSL记录协议(SSL Record Protocol),它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。SSL握手协议(SSL Handshake Protocol),它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

区别:

      https协议需要到CA申请证书,一般免费证书较少,因而需要一定费用。(原来网易官网是http,而网易邮箱是https。)

       http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

      http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

      http的连接很简单,是无状态的。Https协议是由SSL+Http协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。(无状态的意思是其数据包的发送、传输和接收都是相互独立的。无连接的意思是指通信双方都不长久的维持对方的任何信息。)

 

posted on 2021-10-07 15:11  叶子与风  阅读(51)  评论(0)    收藏  举报