您的位置:首页 > 运维架构 > 网站架构

实战:使用数字证书确保Web网站数据传输安全

2013-02-04 02:05 721 查看

4.1 实战:使用数字证书确保Web网站数据传输安全

SSL (Secure Socket Layer)

为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上之传输过程中不会被截取及窃听。目前一般通用之规格为40 bit之安全标准,美国则已推出128 bit之更高安全标准,但限制出境。只要3.0版本以上之I.E.或Netscape浏览器即可支持SSL。

当前版本为3.0。它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

SSL协议提供的服务主要有:

ü 认证用户和服务器,确保数据发送到正确的客户机和服务器;

ü 加密数据以防止数据中途被窃取;

ü 维护数据的完整性,确保数据在传输过程中不被改变。

SSL协议的工作流程:

服务器认证阶段:

1. 客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;

2. 服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;

3. 客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;

4. 服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。

用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证。

从SSL 协议所提供的服务及其工作流程可以看出,SSL协议运行的基础是商家对消费者信息保密的承诺,这就有利于商家而不利于消费者。在电子商务初级阶段,由于运作电子商务的企业大多是信誉较高的大公司,因此这问题还没有充分暴露出来。但随着电子商务的发展,各中小型公司也参与进来,这样在电子支付过程中的单一认证问题就越来越突出。虽然在SSL3.0中通过数字签名和数字证书可实现浏览器和Web服务器双方的身份验证,但是SSL协议仍存在一些问题,比如,只能提供交易中客户与服务器间的双方认证,在涉及多方的电子交易中,SSL协议并不能协调各方间的安全传输和信任关系。在这种情况下,Visa和 MasterCard两大信用卡公共组织制定了SET协议,为网上信用卡支付提供了全球性的标准。

https介绍

HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议

它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。HTTPS实际上应用了Netscape的完全套接字层(SSL)作为HTTP应用层的子层。(HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进行通信。)SSL使用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X.509数字认证,如果需要的话用户可以确认发送者是谁。。

https是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,https的安全基础是SSL,因此加密的详细内容请看SSL。

它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。

限制

它的安全保护依赖浏览器的正确实现以及服务器软件、实际加密算法的支持。

一种常见的误解是“银行用户在线使用https:就能充分彻底保障他们的银行卡号不被偷窃。”实际上,与服务器的加密连接中能保护银行卡号的部分,只有用户到服务器之间的连接及服务器自身。并不能绝对确保服务器自己是安全的,这点甚至已被攻击者利用,常见例子是模仿银行域名的钓鱼攻击。少数罕见攻击在网站传输客户数据时发生,攻击者尝试窃听数据于传输中。

商业网站被人们期望迅速尽早引入新的特殊处理程序到金融网关,仅保留传输码(transaction number)。不过他们常常存储银行卡号在同一个数据库里。那些数据库和服务器少数情况有可能被未授权用户攻击和损害。

示例:配置Web站点使用HTTPS通信

实验目的:

ü 在Web服务器上创建配置Web站点

ü 在Web服务器申请Web服务器证书

ü 配置Web服务器使用数字证书

ü 在DNS服务器上配置www.sohu.com域名解析

ü 在客户机访问使用https://www.sohu.com网站

网络拓扑:





实验环境:

ü CAServer安装了Windows Server 2008企业版,安装了独立的证书颁发机构。

ü WebServer安装了Windows Server 2008企业版,安装了IIS服务。

ü DNSServer安装了Windows Server 2008企业版,安装了DNS服务。

ü 在Sales安装了Vista操作系统。

4.1.1 在WebServer安装Web服务和申请Web证书
任务:

ü 安装Web服务

ü 更改本地连接TCP/IP属性使用Internet上的DNS服务器

ü 打开IE浏览器访问www.sohu.com网站

ü 将该网页另存到C:\inetpub\wwwroot目录下

ü 配置默认站点的默认文档使用保存的搜狐网页

ü 申请网站证书

步骤:

5. 在WebServer上,打开服务器管理器,点击“添加角色”。

6. 在开始之前对话框,点击“下一步”。







7. 在出现的选择服务器角色对话框,选中“Web服务器(IIS)”,在出现的是否添加Web服务器(IIS)所需的功能对话框,点击“添加必须的功能”。

8. 在选择服务器角色对话框,选择“Web服务器(IIS)”,点击“下一步”。







9. 在Web服务器(IIS)对话框,点击“下一步”。

10. 在出现的选择角色服务对话框,保持默认选择,点击“下一步”。







11. 在确认安装选择对话框,点击“安装”。

12. 在安装结果对话框,点击“关闭”。







13. 更改本地连接TCP/IP属性,将首选DNS服务器更改为202.99.160.68,这样可以解析搜狐网站的网址。

14. 打开IE浏览器输入www.sohu.com,点击“文件”à “另存为”,将该网页保持到C:\inetpub\wwwroot目录下。







15. 点击“开始”à“程序”à“管理工具”à“Internet 信息服务(IIS)管理器”。

16. 点中“Default Web Site”,点击“默认文档”。

17. 点击“添加”,在出现的添加默认文档对话框,输入保存的搜狐网站网页名称,点击“确定”。







18. 可以看到搜狐网页已经添加到默认文档。

19. 再次点击“Default Web Site”,点击“浏览*80(http)”。







20. 可以看到WebServer默认站点已经使用将搜狐的网页设置为首页了。

21. 点中“WebServer”,点击“服务器证书”。







22. 点击“创建证书申请”。

23. 在出现的可分辨名称属性,在通用名称输入www.sohu.com,注意:该名称一定是用户访问该网站使用的域名,点击“下一步”。







24. 在文件名对话框,点击“…”,输入文件名,点击“完成”。

25. 打开IE浏览器,输入证书颁发机构的网站http://10.7.10.50/certsrv,在打开的网页,点击“申请证书”。







26. 在申请一个证书页面,点击“高级证书申请”。

27. 在高级证书申请页面,点击“使用base64编码的CMC或PKCS#10文件提交一个证书申请,或使用base64编码的PKCS#7文件续订证书申请”。







28. 打开保存的Web服务器证书申请记事本,选择所有内容,复制所有内容。

29. 在提交一个证书申请或续订申请页面,右击图示位置,点击“粘贴”。







30. 将网站申请的内容粘贴到网页,点击“提交”。

31. 出现证书正在挂起页面。独立证书颁发机构需要证书服务管理员颁发证书。







4.1.2 在CAServer上颁发证书
在CAServer上,以管理员身份登录,点击“开始”à“程序”à“管理工具”à“Certification Authority”,打开证书颁发机构管理工具。

点中“挂起的申请”,右击证书,点击“所有任务”à“颁发”。





4.1.3 在WebServer上配置Web站点使用证书
任务:

ü 下载Web证书。

ü 配置网站使用证书

步骤:

32. 在WebServer上,点击“首页”。

33. 返回到证书申请的页面上,点击“查看挂起的证书申请的状态”。







34. 在查看挂起的证书申请的状态页面,点击“保存的申请证书”。

35. 在证书已颁发页面,点击“下载证书”。







36. 在出现的文件下载对话框点击“保存”,将证书保存到本地。

37. 点击“开始”à“程序”à“管理工具”à“Internet 信息服务(IIS)管理器”,打开Internet信息服务管理器。

38. 如图,点中WebServer,点击“服务器证书”。







39. 点击“完成证书申请”。

40. 在出现的指定证书颁发机构相应对话框,点击“…”,浏览到下载的Web证书,输入好记的名称,点击“确定”。







41. 可以看到申请的证书已经和该服务器关联。

42. 点中“Default Web Site”,点击“绑定”,在出现的网站绑定对话框,点击“添加”。

43. 在添加网站绑定对话框,类型选择“https”,SSL证书选择“WebServerKey”,点击“确定”。







44. 可以看到网站绑定已经添加了https类型以及443端口的绑定。

45. 点中“Default Web Site”,点击“SSL设置”。







46. 在SSL设置界面,选中“要求SSL”,选中“需要128为SSL”,点击“应用”。

47. 点中“Default Web Site”,可以看到该网站有两种访问访问方式http和https。







4.1.4 在DNSServer上配置DNS域名解析www.sohu.com
在DNSServer上,打开DNS管理工具,在正向查找区域创建sohu.com区域,在该区域下添加主机www对应的IP地址10.7.10.120,这样通过该DNS服务器能够解析www.sohu.com域名到WebServer的IP地址。





4.1.5 在Sales计算机使用https协议访问Web站点
任务:

ü 测试到www.sohu.com解析到的IP地址

ü 使用http访问www.sohu.com网址

ü 使用https访问www.sohu.com网址,提示网站安全证书有问题

ü 下载证书颁发机构的证书,并添加到受信任根证书颁发机构

ü 再次使用https访问www.sohu.com网址,没有安全提示

ü 使用https访问10.7.10.120,观察安全提示

步骤:

48. 在Sales计算机上,更改本地连接TCP/IP属性,将首选的DNS配置使用10.7.10.200服务器。

49. 打开IE浏览器,输入网址http://www.sohu.com,发现禁止访问。因为该网站已经强制要求SSL。

50. 打开命令行界面,ping www.sohu.com发现能够解析到WebServer服务器的IP地址10.7.10.120。







51. 出现此网站的安全证书有问题页面,网站出具的安全证书不是由受信任的证书颁发机构颁发的。如何信任该证书颁发机构呢?以下操作将会下载CAServer-CA证书颁发机构证书,并添加到受信任的根证书颁发机构。

52. 输入http://10.7.10.50/certsrv访问证书颁发机构网站,点击“下载CA证书、证书链或CRL”。







53. 在出现的CA证书对话框,点击“下载CA证书”。

54. 在出现的文件下载对话框,点击“保存”。







55. 在出现的另存为对话框,点击“保存”。

56. 在下载完毕对话框,点击“打开”。







57. 在出现的Internet Explorer安全对话框,点击“允许”。

58. 在出现的证书对话框,点击“安装证书”。







59. 在出现的欢迎使用证书导入向导对话框,点击“下一步”。

60. 在证书存储对话框,选择“将所有的证书放入下列存储”,点击“浏览”。

61. 在选择证书存储对话框,点中“受信任的根证书颁发机构”,点击“确定”。







62. 在证书存储对话框,点击“下一步”。

63. 在出现的正在完成证书导入向导对话框,点击“完成”。







64. 稍等一会儿,就会出现安全性警告,点击“是”。到目前位置该用户已经信任CAServer-CA证书颁发机构了。

65. 右击桌面上IE图标,点击“属性”。在出现的Internet属性对话框的内容标签下,点击“证书”。







66. 在出现的证书对话框的受信任的根证书颁发机构标签下,可以看到已经存在了证书颁发机构CAServer-CA的证书。

67. 在次打开IE浏览器,使用https://www.sohu.com访问,能够正常访问,在命令行下输入netstat -n 可以看到使用443端口和Web服务器建立会话。







68. 如图输入https://10.7.10.120访问WebServer的网站。出现安全警告页面,此网站的安全证书有问题,这是因为该网站的证书申请时输入的通用名称是www.sohu.com而不是10.7.10.120。





微软最有价值专家(MVP)从业12年录制500小时16G视频教程 课程网址 http://www.91xueit.com







视频教程网址 http://www.91xueit.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: