随着网络安全越来越受重视,许多提供WEB服务的站点都取消了以往不安全的HTTP传输页面信息,比如证券、银行等网站,转而使用SSL加密的HTTPS传输方式。现在就让我们来看看它是如何实现的。
名词解释:
http:Hypertext Transfer Protocol,超文本传输协议;
https:Secure Hypertext Transfer Protocol,安全超文本传输协议;
SSL:Secure Sockets Layer,一种国际标准的加密及身份认证通信协议,最初是由美国Netscape公司研究出来的,后来成为了Internet网上安全通讯与交易的标准。SSL协议使用通讯双方的客户证书以及CA根证书,允许客户/服务器应用以一种不能被偷听的方式通讯,在通讯双方间建立起了一条安全的、可信任的通讯通道。它具备以下基本特征:信息保密性、信息完整性、相互鉴定。
环境:
Windows 2000 Server/ Windows 2003 Server(本文以Windows 2003 Server为例)
一、组件安装
1. 通过“控制面板——添加或删除程序——添加/删除Windows组件”安装IIS 6.0与证书服务组件;
2. 如果一切安装正常,可通过“控制面板——管理工具——证书颁发机构”浏览服务器相关证书信息。
二、申请文件证书
1. 创建新的证书申请;
打开“控制面板——管理工具——Internet信息服务(IIS)管理器”,在默认Web站点上右键菜单中选择“属性”,点击“目录安全性”选项卡,在“安全通信”中点击按钮“服务器证书(S)…”,打开向导对话框。
2. 选择“新建证书(C)”,点击“下一步”,“下一步”,输入名称“MySoft”,选择位长“1024”位,点击“下一步”;
3. 系统出现“单位”、“部门”输入框,随便填写几个相关数据。点击“下一步”,出现“站点的公用名称”,保持默认,点击“下一步”,选择“国家”、“省”、“市”,点击“下一步”;
4. 系统出现“证书请求文件名”页面,选择您想要的文件名和存放位置。这里保持默认;
5. 点击“下一步”,点击“完成”就申请了一个证书。
三、生成crt文件证书
1. 访问“http://localhost/certsrv/”,把刚才申请的证书提交证书颁发机构;
2. 选择“申请一个证书——高级证书申请——使用 base64 编码的 CMC 或 PKCS #10 文件提交 一个证书申请,或使用 base64 编码的 PKCS #7 文件续订证书申请”;
3. 打开刚才生成的“certreq.txt”文件,把内容复制粘贴到这里。然后点击“提交”;
4. 您可以看到,您申请的证书已经收到,并且现在的状态是挂起;
5. 回到“控制面板——管理工具——证书颁发机构”组件,点击“挂起的申请”节点,可以看到您刚才的申请单;
6. 在证书上,右键菜单中选择“所有任务——颁发”,则证书就转移到了“颁发的证书”节点下。
四、应用证书
到此为止,证书已经申请,并且颁发成功。下边看看如何启用这个证书。
1. 访问“http://localhost/certsrv/”,选择“查看挂起的证书申请的状态——保存的申请证书”,注意选择“Base 64 编码”,把证书下载到本地,文件名:“certnew.cer”;
2. 打开“控制面板——管理工具——Internet信息服务(IIS)管理器”,在默认Web站点上右键菜单中选择“属性”,点击“目录安全性”选项卡,在“安全通信”中点击按钮“服务器证书(S)…”,打开向导对话框,点击“下一步”;
小提示:这一次操作的向导对话框与此前一次有所不同了哦。
3. 选择“处理挂起的请求并安装证书”,点击“下一步”,添加刚才下载的证书文件“certnew.cer”,点击“下一步”,“下一步”,完成向导;
4. 此时可以察看证书,编辑证书;
5. 选择“编辑”,打开设置对话框,注意一定要勾选“要求安全通道(SSL)(R)”,点击“确定”完成最后的设置。
五、开始使用
至此,我们已经完成了安全Web站点所需的全部设置,但是重新访问站点页面
“http://localhost/”时,却发现出现错误提示信息:“该页必须通过安全频道查看”。
重新以https协议访问站点:“https://localhost/”,出现一个使用证书的安全警报,选择“是”后,就可以正常看到我们所需的页面了。