一:先比较下Http和Https:
只要上过网的朋友一定接触过“HTTP”,每次开网页的时候,不管是什么网址,其前面都会出现HTTP字样,比如“http://www.cbifamily.com”、“http://62.135.5.7”等等,而有些时候打开如银行等对安全性要求很高的网站的时候其网址的前缀又会变作“https”,这两个前缀到底是什么意思?有什么作用呢?相信很多用户朋友对此并不了解。下面就由我给大家解释一二。
http的全称是Hypertext Transfer Protocol Vertion (超文本传输协议),说通俗点就是用网络链接传输文本信息的协议,我们现在所看的各类网页就是这个东东。每次开网页时为什么要出现“http://”呢?其实这个道理非常简单,因为你要获得网络上超文本信息,那么你肯定要遵循其超文本传输的规范,就如同你是“天地会”成员,你和其他“天地会”成员接头时首先要说出“地震高岗,一派西山千古秀!”和“门朝大海,三合河水万年流”这样的接头暗号,说出后才能和会友进行沟通。所以每次开网页出现的“http://”就如同上面所讲的接头暗号,当暗号正确后才能获得相关信息。
看完了上面的解释,或许你已经懂得是为什么每次开网页时要出现“http”了。那么接下来我们再谈谈为什么有时候网页的接头暗号又会变作“https”呢?
HTTPS的全称是Secure Hypertext Transfer Protocol(安全超文本传输协议),是在http协议基础上增加了使用SSL加密传送信息的协议。我们还是用天地会接头的例子来讲,大家可能觉得每次天地会接头都是使用“地震高岗,一派西山千古秀!”这类妇孺皆知的接头暗号,这样的组织还有什么安全性可言?只要说出了暗号那么就可能获得天地会的相关秘密。事实上并不是这样的,如果仅仅是靠一个妇孺皆知的接头暗号进行信息保密,天地会可能早被清兵围剿了,何来那么多传奇故事呢?他们之间的交流除了使用了接头暗号外,可能还是用了“黑话”,就是一些仅仅只有天地会成员才能听懂的黑话,这样即使天地会成员之间的交谈信息被泄露出去了,没有相关揭秘的东西,谁也不会知道这些黑话是什么?同样HTTPS协议就如同上面天地会的信息交谈一样,它也将自己需要传输的超文本协议通过SSL加密,让明文变成了“黑话”即使传输的信息被人捕获,捕获的人也没办法知道其实际内容。
所以http和https之间的区别就在于其传输的内容是否加密和是否是开发性的内容。这也是你为什么常常看见https开头的网址都是一些类似银行网站的这类网址的原因
二:言归正题,配置我们的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)。不过他们常常存储银行卡号在同一个数据库里。那些数据库和服务器少数情况有可能被未授权用户攻击和损害。
TLS 1.1之前
这段仅针对TLS 1.1之前的状况。因为SSL位于http的下一层,并不能理解更高层协议,通常SSL服务器仅能颁证给特定的IP/端口组合。这是指它经常不能在虚拟主机(基于域名)上与HTTP正常组合成HTTPS。
这一点已被更新在即将来临的TLS 1.1中—会完全支持基于域名的虚拟主机。
为 Web 服务器配置 SSL
要在 IIS 中启用 SSL,首先必须获得用于加密和解密通过网络传输的信息的证书。IIS 具有自己的证书请求工具,您可以使用此工具向证书颁发机构发送证书请求。此工具简化了获取证书的过程。如果您使用的是 Apache,则必须手动获取证书。
在 IIS 和 Apache 中,您都会收到来自证书颁发机构的证书文件,此文件必须配置在计算机上。Apache 使用 SSLCACertificateFile 指令读取其源文件中的证书。而在 IIS 中,您可以使用网站或文件夹属性的目录安全性选项卡来配置和管理证书。
您可以将证书从 Apache 迁移到 IIS;但是 Microsoft 建议您重新创建或获取一个新的 IIS 证书。
此过程假定您的站点已经具备了证书。
1. 以管理员身份登录到 Web 服务器计算机。
2. 单击开始,指向设置,然后单击控制面板。
3. 双击管理工具,然后双击 Internet 服务管理器。
4. 从左窗格中的不同服务站点的列表中选择网站。
5. 右键单击希望为其配置 SSL 通信的网站、文件夹或文件,然后单击属性。
6. 单击目录安全性选项卡。
7. 单击编辑。
8. 如果希望网站、文件夹或文件要求 SSL 通信,请单击需要安全通道 (SSL)。
9. 单击需要 128 位加密以配置 128 位(而不是 40 位)加密支持。
10. 要允许用户不必提供证书就可以连接,请单击忽略客户证书。
或者,如果要让用户提供证书,请使用接受客户证书。
11. 要配置客户端映射,请单击启用客户证书映射,然后单击编辑将客户证书映射到用户。
如果配置了此功能,可以将客户证书分别映射到 Active Directory 中的每个用户。可以使用此功能以根据用户访问网站时提供的证书自动识别用户。可以将用户一对一映射到证书(一个证书标识一个用户),或者将许多证书映射到一个用户(根据特定的规则,对照证书列表来匹配特定的用户。第一个有效的匹配项成为映射。)
12. 单击确定。
下面就要为各位读者介绍如何通过IIS证书向导配置我们需要的证书文件。(From:it168)
第一步:通过“管理工具”中的IIS管理器启动IIS编辑器。
第二步:在默认网站上点鼠标右键选择“属性”。(如图11)
图11
第三步:在默认网站属性窗口中点“目录安全性”标签,然后在安全通信处点“服务器证书”按钮。(如图12)
图12
第四步:系统将自动打开WEB服务器证书向导。(如图13)
图13
第五步:服务器证书处选择“新建证书”,然后下一步继续。(如图14)
图14
第六步:延迟或立即请求处选择“现在准备证书请求,但稍后发送”。(如图15)
图15
第七步:设置证书的名称和特定位长,名称保持默认网站即可,在位长处我们通过下拉菜单选择512。(如图16)
图16
小提示:位长主要用于安全加密,位长越来则越安全,不过传输效率会受到一定的影响,网站性能也受影响。一般来说选择512已经足够了。
第八步:输入单位信息,包括单位和部门。(如图17)
图17
第九步:在站点公用名称窗口输入localhost。(如图18)
图18
第十步:地理信息随便填写即可。(如图19)
图19
第十一步:设置证书请求的文件名,我们可以将其保存到桌面以便下面步骤调用方便,保存的文件名为certreq.txt。(如图20)
图20
第十二步:完成了IIS证书向导配置工作,并按照要求将相应的证书文件保存到桌面。(如图21)