如何在Web服务器上设置SSL?

使用SSL实现加密传输(1)默认情况下,IIS使用HTTP协议明文传输数据,Web Service使用HTTP协议传输数据。Web服务传输的数据是XML格式的纯文本。在没有任何加密措施的情况下,用户的重要数据很容易被窃取。如何保护这些在网络中传输的重要数据?SSL(安全套接字层),中文全称是加密套接字协议层(Encrypted Socket Protocol Layer),位于HTTP协议层和TCP协议层之间,用于在用户和服务器之间建立加密通信,保证传输信息的安全性。同时,SSL安全机制通过数字证书来实现。SSL基于公钥和私钥。用户使用公钥加密数据,但必须使用相应的私钥解密数据。使用SSL安全机制的通信过程如下:用户与IIS服务器建立连接后,服务器将数字证书和公钥发送给用户,客户端生成会话密钥,用公钥加密会话密钥,然后传递给服务器,服务器用私钥解密。这样,客户端和服务器将建立安全通道,只有SSL允许的用户才能与IIS服务器通信。请注意,SSL网站不同于普通网站,它们使用“HTTPS”协议,而不是普通的“HTTP”协议。所以它的URL(统一资源定位符)格式是“访问Web服务”,所以这里必须填写为“www.maticsoft.com”,否则会提示使用了不安全的证书,导致站点无法访问。记住,www.maticsoft.com和www.maticsoft.com:8001有不同的端口访问。如果设置了www.maticsoft.com,则不能使用设置为www.maticsoft.com:8001的网站进行访问。然后,点击"下一步"按钮设置国家和地区,如图7-25所示。图7-25:设置国家和地区办证单位、部门、站点的通用名和地理信息,一路点击“下一步”按钮。最后,指定请求的证书文件的存储位置。这就完成了请求证书文件的创建。7.9.2使用SSL实现加密传输(3) 2)申请服务器证书。完成上述设置后,将创建的请求证书文件提交给证书服务器。在服务器端IE浏览器的地址栏输入“http://localhost/certsrv/default . ASP”。点击“微软证书服务”欢迎窗口中的“申请证书”链接,如图7-26所示。接下来,单击证书申请类型中的“高级证书申请”链接,如图7-27所示。图7-26申请证书图7-27选择证书类型,在高级证书申请窗口中点击“CMC或PKCS # 10使用base64编码”链接,如图7-28所示。图7-28选择编码接下来,在新打开的窗口中,打开新生成的“certreq.txt”文件,将其内容复制到“保存的应用程序”中,如图7-29所示。图7-29提交证书申请点击“提交”按钮,显示“证书待定”页面,如图7-30所示。图7-30证书悬挂7 . 9 . 2 SSL加密传输(4) 3)颁发服务器证书提交证书申请后,需要颁发服务器证书。选择“开始”->“设置”->“控制面板”,双击“管理工具”,然后双击“证书颁发机构”,在打开的对话框中选择“待申请”选项,如图7-31所示。()图7-31暂停申请找到您刚刚申请的证书,然后用鼠标右键单击该项,在快捷菜单中选择“所有任务”->“颁发”,如图7-32所示。颁发成功后,选择“已颁发证书”选项,双击刚刚颁发的证书,在“证书”对话框的“详细信息”选项卡中点击“复制到文件”按钮,如图7-33所示。图7-32颁发证书图7-33复制到文件,弹出“证书导出向导”对话框。连续点击“下一步”按钮,选择“Base64编码X.509”选项,如图7-34所示。()图7-34选择导出文件格式,单击“下一步”按钮,在“要导出的文件”对话框中指定文件名,最后单击“完成”按钮。4)安装Web服务器证书,并重新进入IIS管理器的“目录安全”选项卡。点击“服务器证书”按钮,弹出“暂停证书请求”对话框,选择“处理暂停请求并安装证书”选项,点击“下一步”按钮,如图7-35所示。()图7-35处理挂起的证书指定刚导出的服务器证书文件的位置,如图7-36所示。()图7-36选择导出位置然后设置SSL端口,就用默认的“443”,最后点击“完成”按钮即可。7.9.2利用SSL实现加密传输(5) 5)配置网站启用SSL通道。点击网站属性“目录安全”标签中的“编辑”按钮,然后勾选“需要安全通道(SSL)”选项,如图7-37所示。()图7-37启用网站的SSL通道并忽略客户端证书:选择此选项可允许用户在不提供客户端证书的情况下访问网站。接受客户端证书:选择此选项以允许拥有客户端证书的用户进行访问。不需要证书。可以映射具有客户端证书的用户;没有客户端证书的用户可以使用其他身份验证方法。要求客户端证书:选择此选项仅允许具有有效客户端证书的用户进行连接。没有有效客户端证书的用户将被拒绝访问该站点。选择此选项,以便在要求客户端证书之前必须选择要求安全通道(SSL)选项。最后,单击“确定”按钮,SSL被启用。完成SSL网站的配置后,用户在IE浏览器中输入“https://网站域名”即可访问网站。注意,勾选SSL后,必须使用HTTPS访问,访问网站的端口也会使用SSL端口,默认为443。如果在访问过程中无法正常访问网站,请检查服务器防火墙是否禁止访问SSl端口443,这个端口很容易被忽略。当然,你也可以自己修改端口。如果仍然无法访问,会出现提示“您试图从目录中执行CGI、ISAPI或其他可执行程序,但目录不允许您执行程序。HTTP错误403.1-禁止访问:拒绝访问。然后请检查网站主目录的执行权限,并将执行权限设置为纯脚本,如图7-38所示。图7-38设置执行权限6)客户端安装证书如果IIS服务器设置了“需要客户端证书”,其他机器或用户想要通过HTTPS访问和调用Web服务,需要将CA根证书导入到客户端证书的可信机构中,这样客户端才能正常访问Web服务。(1)选择“开始”->“运行”命令,在弹出的对话框中输入“mmc”,打开如图7-39所示的界面。图7-39启动控制台(2),选择“文件”->“添加/删除管理单元”,打开如图7-40所示界面。图7-40添加/删除管理单元(3)点击“添加”按钮,在可用的独立管理单元列表中选择“证书”选项,出现如图7-41所示的界面。(4)选择“电脑账户”选项,点击“下一步”按钮,选择“本地电脑”选项,然后依次点击“完成”→“关闭”→“确定”按钮。图7-41添加证书管理单位进入当前用户的证书管理单位。界面如图7-42所示。()图7-42选择证书导入位置,选择“个人”下的“证书节点”选项,单击鼠标右键,在快捷菜单中选择“所有任务”->“导入”命令,如图7-43所示。()图7-43导入证书选择我们刚刚颁发的服务器证书cert.cer,导入到个人存储位置,导入后如图7-44所示。()图7-44导入到证书7)7)SSL的优缺点:对Web服务提供的数据完整性没有影响。当该值返回给客户时,该值保持不变,并且由于在传输过程中使用了加密技术而没有改变。缺点:对网站整体性能有影响,因为需要大量的加解密数据处理。0 0 0(请对文章发表评论)