PDA

查看完整版本 : 【转帖】使用SSL加密IIS站点


Tony
2005-01-18, 01:32 AM
摘要

默认情况下HTTP协议是没有任何加密措施的,所有的消息全部都是以明文形式在网络上传送的,恶意的攻击者可以通过安装监听程序来获得浏览器和服务器之间的通讯内容。所以全面加密整个网络传输隧道是个良好的安全措施。

SSL(Security Socket Layer加密套接字协议层)位于HTTP层和TCP层之间,建立用户与服务器之间的加密通信,确保所传递信息的安全性。SSL是工作在公共密钥和私人密钥基础上的,任何用户都可以获得公共密钥来加密数据,但解密数据必须要通过相应的私人密钥。使用SSL 安全机制时,首先客户端与服务器建立连接,服务器把它的数字证书与公共密钥一起发送给客户端,客户端随机生成会话密钥,用从服务器得到的公共密钥对会话密钥进行加密,并把会话密钥在网络上传递给服务器,而会话密钥只有在服务器端用私人密钥才能解密,这样, 客户端和服务器端就建立了一个惟一的安全通道。

建立了SSL安全机制后,只有SSL允许的客户才能与SSL允许的Web站点进行通信,并且在使用URL资源***时,输入https:// ,而不是http:// 。

关键字

SSL,IIS,加密,数字认证

服务器端设置

安装CA服务

1.以Win2000服务器版本为例,要想使用SSL加密机制,首先需要在控制面板里的添加删除Windows组件中去安装“证书服务”。

2.在安装的时候,选择“独立根CA”的安装类型,然后为该CA服务器起个名字,设置证书的有效期限,使用默认值即可,最后指定证书数据库和证书数据库日志的位置后,就完成了证书服务的安装。

申请数字证书

1.生成证书请求文件

进入“控制面板→管理工具→Internet 服务管理器”,选择我们需要配置的Web站点,选择Web站点“属性”里的目录安全性-安全通信-服务器证书。

在“IIS证书向导”窗口中选择“新建证书”选项。这里注意站点名称和证书名称最好一致,推荐使用1024位的加密位长。

接着设置证书的单位、部门等信息,然后需要指定证书请求文件的保存位置,需要把证书请求文件保存在一个安全的地方,同时在后面的提交证书服务器的时候也会用到这个文件。

2.将刚刚生成的服务器申请证书提交给证书服务器。

在IE地址栏中输入http://localhost/CertSrv。

在“Microsoft 证书服务”窗口中选择“申请证书”。

在选择申请类型的时候,选择“高级申请”。

在“高级证书申请”窗口中选择“使用BASE64编码方式”

接下来在“提交一个保存的申请”窗口将证书请求文件(即前面生成的文件)的内容复制到“保存的申请”输入框中,最后点击“提交”按钮。

提交成功以后,会返回一个页面告知证书表示已经成功提交了,但是现在是处于挂起状态需要等待CA中心颁发才能生效。

Tony
2005-01-18, 01:33 AM
颁发数字证书

在管理工具中的“证书颁发机构”,在“待定申请”中找到刚刚的申请条目,然后点击鼠标右键选择“所有任务→颁发”,就完成了证书的颁发。

导出数字证书

在“证书颁发机构”中点击 “颁发的证书”目录,打开刚刚颁发成功的证书,在 “证书”对话框中切换到“详细信息”标签页。点击“复制到文件”按钮,可以将证书导出到指定位置。

导入数字证书

重新回到“Internet 服务管理器”的“目录安全性”标签页中,点击“服务器证书”按钮,在“挂起的证书请求”窗口,选择“处理挂起的请求并安装证书”。

点击“下一步”后,指定好刚才导出的数字证书文件的位置。确定一切信息正确以后,就可以点击下一步来完成SSL的安装了。

安装结束后,在Web站点选项卡中指定SSL使用的端口是443的端口,最后点击“完成”按钮。

配置IIS服务器

完成了数字证书的导入后,Web网站这时并没有启用SSL安全加密功能,需要对IIS服务器进行相应的配置。

在Web站点“属性”里的“目录安全性→安全通讯→编辑”,选中“申请安全通道(SSL)”和“申请128位加密”选项,以指定浏览器必须以HTTPS方式访问该网站。选中“客户证书→申请客户证书”,以指定访问该网站的客户端必须安装Web浏览的证书。

Tony
2005-01-18, 01:34 AM
客户端访问

申请、安装客户证书

1.要申请访问加密Web站点的客户,在IE地址栏中输入http://(CA Server Name)/CertSrv,申请一个“Web浏览器证书”。

注意:点击“更多选项”,可以选择其他更多更详细的内容;其中“标记密钥可导出”选项,指用户可以自由导出证书和私钥,安装到其他机器,缺省是不可导出的。

2.填写完整后提交,完成证书申请。

3.等待CA服务器颁发刚才申请的证书。

4.客户机得到申请证书通过的通知后,在IE地址栏中输入http://(CA Server Name)/CertSrv,“检查挂起证书”,安装刚刚颁发通过的证书。

5.这时客户端就可以使用 https:// 来访问经过SSL加密保护的Web站点了。每次通过HTTPS进入站点的时候,会有一个对话框让客户确认是否同意当前证书,选择同意。接下来选择安装好的数字证书,就可以正常访问站点了。

FAQ

Q:什么时候需要废除并重新申请自己的数字证书?

A:在废除证书之前,请您仔细思考是否有这个必要。如果您认为您的数字证书已经不能唯一标示您的身份,或者您觉的您的证书已经不安全,或者,您想到其他的机器上重新申请证书,那么,就应该及时废除自己的证书。证书废除后,您需要重新申请证书。

Q:使用SSL进行安全连接时总是出现连接失败,不知是何原因?

A:使用SSL以后,连接如果失败,你可以按以下步骤进行检查:

1)首先检查Internet连接是否正常,你可以访问同一站点的其他网页,或者用PING命令检查是否能够连接到该站点。

2)可能服务器要求提供用户证书,而你还没有申请数字证书或者数字证书已经被破坏,你可以重新申请证书。

3)检查证书与该站点的证书是否为同一CA服务器所发。

Q:如果我要更换我的机器,是否还能连到原来的Web网点?

A:可以采用两种方法:第一种方法是首先废除证书,然后在新的机器上重新申请证书。

另一种方法是将原来的证书导出,导入到新的机器中。

Q:如何从IE中导入导出证书?

A:导出证书 :选择IE的菜单“工具/Internet 选项”,选中“内容”属性页,在“证书”栏里点击“证书”按扭打开“证书管理器”。选择“个人”您可以看到所有保存在本机上的个人证书。选择您要导出证书,单击“导出”,在弹出的对话框中,重复选择“下一步”,在“私钥的密码保护”对话框,输入密码后,选 择“下一步”,在“导出文件名”对话框中输入文件名,单击“完成”。

导入证书:选择IE的菜单“工具/Internet 选项”,选中“内容”属性页,在“证书”栏里点击“证书”按扭打开“证书管理器”。选择“个人”,单击“导入”,在弹出的对话框中,选中证书文件,选择“下一步”,在“私钥的密码保护”对话框中输入密码,单击“完成”。

Q:如何删除数字证书?

A:选择IE的菜单“工具/Internet 选项”,选中“内容”属性页,在“证书”栏里点击“证书”按扭打开“证书管理器”。选择“个人”您可以看到所有保存在本机上的个人证书。选择要删除的证书,点击“删除”即可。

Q:如何保护自己的数字证书?

A:数字证书中用到了公共密钥加密技术。在最初申请数字证书的登记过程中,计算机将创建两把密钥:一把是公开的,它将在你的数字证书中公布并将寄存于认证中心。而另一则是私人的,它将存放在用户的计算机上。它是在本地计算机上产生的,且不传送给任何人。你 的数字身份完整性完全取决于你私人密钥的安全保管。必须指出,保护私人密钥是你个人的责任。任何人一旦获得了你的私人密钥就能伪造你的数字签名,并冒用你的名义为所欲为。一般保护自己的私人密钥有以下几种方法:

· 将私人密钥存放在自己计算机的硬盘上,这样你能控制对它的存取。

· 当你产生自己的私人密钥时,你所使用浏览器将要求你输入一个密码,这一密码将保护对私人密钥的存取。对于微软IE用户,私人密钥将由Windows密码加以保护。 只有在下述两种情况下,第三方可以存取您的私人密钥:

· 有权存取你存放密钥的文件(常常是你的系统配置文件)。

· 知道你的私人密码。 有的软件允许你选择不使用密码来保护你的私人密钥。如果你选择了这项,你必须已确信,无论现在还是将来,都不会有人非法访问你的计算机。

总而言之,使用密码要比完全以物理角度保护你的计算机方便得多。不选用密码,就像在自己的支票夹上预先签好了所有支票,并将它打开着放在办公桌上。