一、什么是PKI、SSL
PKI是一个完整的颁发、吊销、管理数字证书的一个系统。

PKI(Public Key Infrastructure)是指用公钥概念和技术来实施和提供安全服务的具有普适性的安全基础设施。PKI既不是一个协议,也不是一个软件,它是一个标准,在这个标准之下发展出的为了实现安全基础服务目的的技术统称为PKI
SSL安全协议最初是由美国网景 Netscape Communication 公司设计开发的,全称为:安全套接层协议 (Secure Sockets Layer) , 它指定了在应用程序协议 ( 如 HTTP 、 Telnet 、FTP) 和 TCP/IP 之间提供数据安全性分层的机制,它是在传输通信协议 (TCP/IP) 上实现的一种安全协议,采用公开密钥技术,它为 TCP/IP 连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证。由于此协议很好地解决了互联网明文传输的不安全问题,很快得到了业界的支持,并已经成为国际标准。
二、PKI、SSL能做什么
PKI(Public Key Infrastructure)即"公钥基础设施",是一种遵循既定标准的密钥管理平台,它能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理体系,简单来说,PKI就是利用公钥理论和技术建立的提供安全服务的基础设施。PKI技术是信息安全技术的核心,也是电子商务的关键和基础技术。
SSL协议可分为两层: SSL记录协议(SSL RecordProtocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
三、SSL概况

SSL三次握手
证书颁发机构
(Certification Authority)

} 所谓的数字证书和我们的个人身份证是类似的
} 数字证书原理如图,采用的是公钥机制,颁发证书时证书中心会对公钥进行签名。
单一密钥技术

对称密钥技术算法简单,加、解密迅速,而且密文的加密性强。如何传递密钥 ?
公钥加密技术

数字签名

用户A用自己的私钥对数字签名,用户B收到数据后用用户A的公钥来验证数据。如果数据一致就证明数据没有被动过手脚,这就是数字签名。
四、实训项目
实验拓扑图
实验用VBox虚拟机来模拟独立根、邮件服务器和客户机,虚拟机之间采用内部网络的网络连接方式,其中Win2012-2(系统Windows Server 2012r2)来充当独立根、邮件服务器,Win2012-1为Web和DNS服务器、邮件客户端,Win2012-3为邮件客户端

1.独立根CA的安装
Win2012-2:
在这之前要先安装WEB(IIS)服务,用来发布根CA

添加证书服务

添加证书服务


安装成功后别急着关闭配置证书服务(如果不小心关了,可在管理器上的小旗子里选择配置)


下一步到这选上要配置的服务







记住证书的位置


配置完成

在工具中找到证书颁发机构

配置界面,安装完成

2.证书的使用
2.1.构建SSL网站
目的:让web服务器和客户端都信任独立跟CA
步骤:
1、在网站上建立证书申请文件
2、将申请文件传送到独立的CA并下载证书文件
3、安装证书启用SSL
4、建立与网站之间的SSL连接
SSL网站
用证书保护web网站

WIN2012-1:
DNS上添加win2012-1.abc.com记录

在网站输入192.168.1.2/certsrv下载证书

下载CA证书,记得保存的地址

运行mmc打开控制台


在列表里找到证书后添加,弹出窗口后选择计算机账号

完成

确定






导入成功

打开IIS管理器,找到服务器证书

证书申请

通用名称必须与域名一致,其它自己填


为证书创建一个文件名

申请证书与下载证书
在浏览器上输入192.168.1.2/certsrv

高级证书申请

第二个

找到刚刚在IIS管理器中申请证书时生成的文本,复制里面的内容

张贴后提交

证书申请提交成功

到Win2012-2-CA服务器中把证书颁发给Win2012.abc.com网站

回到Win2012-1中输入地址192.168.1.2/certsrv/certckpn.asp中查看证书申请的状态

可以发现证书已颁发,下载证书

在IIS服务器中安装证书

文件名选择刚刚下载的证书文件并输入好记的名称后确定

添加网站,在右侧验证网站中选择绑定


添加新的绑定

类型选择https(由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议)

测试,把http协议改成https,这是需要安全连接SSL的网站

2.2.用证书保护FTP
添加证书

创建自签名证书





保存

测试
客户端测试,均显示无法连接


下面选择CuteFTP来测试
支持FTP Over SSL

添加FTP站点


可以明确指出什么模式


成功连接


2.3.用证数保护电子邮件
电子邮件原理

电子邮件保护证书的使用举例

实验拓扑

实验步骤
1. Win2012-2安装邮件服务winmail
2. 在邮件服务器上创建两个邮箱u1@abc.comu2@abc.com
3. Win2012-1、3号机安装邮件客户端软件foxmail分别连接u1@abc.com和u2@abc.com
4. Win2012-1、3号机向Win2012-2的电子邮件申请数字证书
先手动信任独立根CA->利用浏览器向CA申请证书
注意设置两项安全性:本地intranet安全性为低,并添加信任)
- u1@abc.com向u2@abc.com发数字签名的邮件
- u2@abc.com向u1@abc.com发加密邮件
Win2012-2,运行Winmail安装程序,一直默认选项下一步到这输入密码

等待安装完成


创建两个邮箱u1@abc.com和u2@abc.com


找到管理端工具并打开(桌面应该有快捷方式)

登陆

可以查看刚刚新建的两个邮件

到Win2012-1DNS服务器中新建两个主机

Win2012-1和Win2012-3客户端安装Foxmail(安装6.0或者以下的版本,7.0开始取消了数字签名)

完成

打开应用程序新建账号


完成

测试

u2成功接收到邮件

申请保护电子邮件的证书
在Win2012-2CA服务器上给默认的网站添加https的证书绑定

现在就可以在客户端上申请邮件保护的证书了(网址打https://win2012-2/certsrv)
在Win2012-1和Winc2012-3客户端中要先下载并导入Win2012-2的证书(在构建SSL中有介绍,忘了可以回去查)
Win2012-1:





Win2012-3:

同理在Win2012-3客户端也申请邮件证书

提交成功

在Win2012-2CA服务器中给刚申请的证书颁发下去

回到客户端查看证书申请的状态


安装成功

IE浏览器中的“Internet选项”菜单,可查看证书



回到foxmail里在写邮件中的工具栏里勾选数字签名

再发送一次邮件测试


U2收到签名的邮件(用数字签名来保护邮件到这就介绍完了,下面是加密的过程)

右键刚收到的邮件找到邮件属性

把u1的证书添加到地址簿


编辑加密后的邮件给u1

确定

u1接收成功(到这加密邮件就介绍完)

可同时对邮件进行加密和数字签名



3.证书管理
3.1.CA的备份




3.2.CA的还原
CA的还原 -----要先停止CA服务器,才能还原





3.3.吊销证书



3.4.发布CRL(吊销证书列表)


在Win2012-3中下载CRL




3.5.导入和导出证书
用IE导入/导出证书

用证书管理单元导入/导出


-----------------------------------------------------分割线------------------------------------------------------
至此PKI和SSL证书就介绍完了,如果文章有什么错误或者模糊的地方,欢迎大家在评论里指出来,我会及时更正的,谢谢。


887

被折叠的 条评论
为什么被折叠?



