SSL配置实验


一、实验目的

(1)掌握对Web数据进行SSL安全传输的技术;

(2)掌握证书申请的过程;

(3)熟悉X.509 v3证书格式。


二、实验设备与环境

(1)VMware Workstation

(2)两台Windows虚拟机,其中一台为Windows Server

(3)IIS的Web服务器和证书服务

(4)Wireshark软件


三、实验内容

配置基于Web的SSL连接:

(1)IIS服务器的启动;

(2)证书服务的启动和独立根CA的安装;

(3)服务器证书申请、颁发和安装;

(4)客户端证书申请、颁发和安装;

(5)在服务器上配置SSL;

(6)客户端通过SSL与服务器建立连接;

(7)Wireshark抓包,分析SSL记录,并绘制SSL握手的流程。


四、实验过程

(1)打开VMware Workstation,打开Windows Server虚拟机作为服务器,另一台Windows虚拟机作为客户机。两台虚拟机均配置为仅主机模式,"编辑虚拟机设置-硬件-网络适配器-仅主机模式"。

(2)在服务器上安装IIS组件,并配置Web站点。"控制面板-添加或删除程序-添加/删除Windows组件"。在弹出的"Windows组件向导"窗口中,勾选"应用程序服务器",在"配置选项"中选择"自定义配置",在"服务器角色"中选择"应用程序服务器(IIS)",如图1所示,根据向导指引完成安装。若已安装好应用程序服务器,进入图1界面,双击"应用程序服务器",在弹出的"应用程序服务器"窗口中。

图1 安装IIS

图2 IIS配置

(3)"开始-管理工具-Internet信息服务(IIS)管理器",选择"网站-默认网站",右击选择"属性",弹出"默认网站属性"窗口。"网站"下"IP地址"修改为服务器本机的IP地址。"主目录"下"本地路径"栏应写入网站文件存放的目录。"文档"下勾选"启用默认文档",添加自己编写的网站文件,并通过上移置顶。

图3

图4

图5 配置Web服务器

(4)使用客户机虚拟机,在浏览器中输入Web服务器的IP地址,能够访问自建的Web站点。

图6

(5)在服务器上安装CA组件。"控制面板-添加或删除程序-添加/删除Windows组件"。在弹出的"Windows组件向导"窗口中,勾选"证书服务"。"CA类型"选择"独立根CA",在"此CA的公用名称"中设置一个CA名称,依据向导提示完成后续设置。注意此处有两个弹出的对话框,"要完成安装,证书服务需暂时停止Internet信息服务",以及"您要现在启用Active Server Page吗",均选择"是"。

图7

图8

(6)打开"控制面板-管理工具-证书颁发机构",可以查看到自己命名的CA。打开"Internet信息服务(IIS)管理器",可以看到默认网站关于CA证书的列表。

图9

图10 证书颁发机构与CA证书列表

(7)在"Internet信息服务(IIS)管理器-网站"中,右击"默认网站"选择属性,在"目录安全性"下"安全通信"中点击"服务器证书"安装证书。进入"IIS证书向导"。在"服务器证书"中选择"新建证书"。随后依据向导提示填写各项信息(留意certreq.txt文件保存的路径),完成证书安装。

图11

图12 服务器证书申请

(8)在服务器上使用浏览器打开本地Web站点进入证书申请页面(注意应将该站点列为可信站点)。选择"申请一个证书",再选择"高级证书申请"。

图13 证书申请

(9)选择"使用base64编码的......证书申请",找到服务器上之前保存的certreq.txt,打开并将其内容全部复制到服务器浏览器文本框"保存的申请"中,点击提交。页面提示证书被挂起,申请已被提交到证书颁发机构。

图14 保存证书申请文件

(10)在服务器中打开"控制面板-管理工具-证书颁发机构",选择"挂起的申请",可以看到刚才申请后被挂起的证书,选择该证书,右击在"所有任务"中选择"颁发"。

图15 颁发证书

(11)再次在服务器浏览器中打开地址,选择"查看挂起的证书申请的状态",点击"保存的申请证书",选择"下载证书"。保存该证书。

图16 下载证书

(12)再次打开"Internet信息服务(IIS)管理器",右击"默认网站"-"属性",在"目录安全性"下点击"服务器证书",在"IIS证书向导"-"挂起的证书请求"中选择"处理挂起的请求并安装证书"。输入相应的路径和文件名,"SSL端口"设置为443,依据向导提示完成证书安装。

图17 处理挂起的请求并安装证书

图18

(13)点击"默认网站属性-目录安全性-安全通信-编辑",在弹出的"安全通信"窗口中勾选"要求安全通道(SSL)"。

图19 启用安全通道

(14)在客户机浏览器中使用https方式访问服务器站点。

图20 https访问站点

(15)打开Wireshark,分析SSL(TLS)记录与数据包关键字段的值,绘制SSL(TLS)握手的流程。(如下图为本机电脑访问搜狗的https网站首页)

图21

图22

相关推荐
tmacfrank3 分钟前
Java 原生网络编程(BIO | NIO | Reactor 模式)
java·开发语言·网络
天天爱吃肉821838 分钟前
车载以太网驱动智能化:域控架构设计与开发实践
java·运维·网络协议·微服务
田梓燊2 小时前
数学复习笔记 12
笔记·线性代数·机器学习
IP管家2 小时前
企业级IP代理解决方案:负载均衡与API接口集成实践
服务器·网络·数据库·网络协议·tcp/ip·容器·负载均衡
愚润求学2 小时前
【Linux】进程间通信(一):认识管道
linux·运维·服务器·开发语言·c++·笔记
RockLiu@8052 小时前
自适应稀疏核卷积网络:一种高效灵活的图像处理方案
网络·图像处理·人工智能
霸王蟹2 小时前
React中useState中更新是同步的还是异步的?
前端·javascript·笔记·学习·react.js·前端框架
霸王蟹2 小时前
React Hooks 必须在组件最顶层调用的原因解析
前端·javascript·笔记·学习·react.js
{⌐■_■}2 小时前
【gRPC】HTTP/2协议,HTTP/1.x中线头阻塞问题由来,及HTTP/2中的解决方案,RPC、Protobuf、HTTP/2 的关系及核心知识点汇总
网络·网络协议·计算机网络·http·rpc·golang
珊瑚里的鱼2 小时前
【滑动窗口】LeetCode 1658题解 | 将 x 减到 0 的最小操作数
开发语言·c++·笔记·算法·leetcode·stl