IIS的身份认证除了匿名访问、基本验证和Windows NT请求/响应方式外,还有一种安全性更高的认证,就是通过SSL(Security Socket Layer)安全机制使用数字证书。 因此,为了网络的安全越来越多的企业采用SSL来避免或减少这方面带来的损失。 SSL(加密套接字协议层)位于HTTP层和TCP层之间,建立用户与服务器之间的加密通信,确保所传递信息的安全性。

     

    IIS的身份认证除了匿名访问、基本验证和Windows NT请求/响应方式外,还有一种安全性更高的认证,就是通过SSL(Security Socket Layer)安全机制使用数字证书。
    因此,为了网络的安全越来越多的企业采用SSL来避免或减少这方面带来的损失。
    SSL(加密套接字协议层)位于HTTP层和TCP层之间,建立用户与服务器之间的加密通信,确保所传递信息的安全性。SSL是工作在公共密钥和私人密钥基础上的,任何用户都可以获得公共密钥来加密数据,但解密数据必须要通过相应的私人密钥。使用SSL安全机制时,首先客户端与服务器建立连接,服务器把它的数字证书与公共密钥一并发送给客户端,客户端随机生成会话密钥,用从服务器得到的公共密钥对会话密钥进行加密,并把会话密钥在网络上传递给服务器,而会话密钥只有在服务器端用私人密钥才能解密,这样,客户端和服务器端就建立了一个惟一的安全通道。
    建立了SSL安全机制后,只有SSL允许的客户才能与SSL允许的Web站点进行通信,并且在使用URL资源定位器时,输入https:// ,而不是http://。
    下面我们以WIN2000服务器版本的来做例子,介绍一下怎样利用SSL加密HTTP通道来加强IIS安全的。

        操作办法

    一、架设证书服务器(CA服务)

1.在系统控制面板中,找到“添加/删除程序”,点击左侧的“添加/删除windows组件”,在列表中找到“证书服务”,安装之。
使用SSL在IIS中配置HTTPS网站

     

    2.CA类型,这里有四种选择,这里以“独立根CA”为介绍。

使用SSL在IIS中配置HTTPS网站

     

    3.CA识别信息,这里可以为你的CA服务器起个名字。

使用SSL在IIS中配置HTTPS网站

     

    4.证书数据库设置,用于保存证书的相关数据库和日志文件,这个默认就行了。

使用SSL在IIS中配置HTTPS网站

     

    5.安装完成后,在 控制面板 - 管理工具 中就可以打开 证书颁发机构,这个工具是用于审核证书用的,后面会提到。

使用SSL在IIS中配置HTTPS网站

     

    6.安装完成后,在IIS中,还会增加三个相关的目录,其中的“CertSrv”就是证书申请的页面了。

使用SSL在IIS中配置HTTPS网站

    7.完成上面的设置后,我们就要把我们刚刚生成的服务器证书提交给我们刚刚在本地安装的证书服务器。在默认情况下证书服务器完成安装后会在本地的IIS里的WEB服务器里面生成几个虚拟的目录。我们打开http://localhost/CertSrv/default.asp,可以看到如下图,至此,CA服务器基本已架设完成。

使用SSL在IIS中配置HTTPS网站

     

    二、让IIS开启HTTPS(SSL)功能

    1.在IIS中的“默认网站”右键,选择“属性”,可看到网站属性,点击“目录安全性”标签页,点击“服务器证书”按钮。

使用SSL在IIS中配置HTTPS网站

     

    2.选择“新建证书”,下一步

使用SSL在IIS中配置HTTPS网站

     

    3.选择“现在准备证书请求,但稍后发送”,下一步

使用SSL在IIS中配置HTTPS网站

     

    4.单位信息,这里需要自己填写,至于写什么,自己可以决定,这些信息会在证书中显示。

使用SSL在IIS中配置HTTPS网站

     

    5.名称和安全性,名称默认是IIS网站的名称,密钥长度默认为1024位,下一步

使用SSL在IIS中配置HTTPS网站

     

    6.站点公用名称,这个默认是服务器的机器名,请注意,如果IIS是对象服务的,此处必须填写对应的域名。

使用SSL在IIS中配置HTTPS网站

     

    7.地理信息,随便填吧,下一步

使用SSL在IIS中配置HTTPS网站

     

    8.证书请求文件名,默认是保存在C盘下,打开后会看到如下一串加密的字符串。

使用SSL在IIS中配置HTTPS网站

使用SSL在IIS中配置HTTPS网站

     

    9.先将证书的加密串复制下来,前往前面提到的证书申请的页面,选择“申请一个证书”

使用SSL在IIS中配置HTTPS网站

     

    10.证书的申请方式,选择“高级证书申请”

使用SSL在IIS中配置HTTPS网站

     

    11.选择“使用base64……”

使用SSL在IIS中配置HTTPS网站

     

    12.将证书串填入文本框中,并“提交”,至此,完成了证书的申请。(先别急着关IE,点右上的“主页”等着吧)

使用SSL在IIS中配置HTTPS网站

     

    13.回到证书颁发机构工具中,选择左边的“挂起的申请”,可以看到里面有一条申请记录,申请ID就是你刚才申请的ID。

    选中记录,右键 - 所有任务 - 颁发,这样即可以颁发证书了。

    点击“颁发的证书”就可以看到刚刚颁发的证书了。

使用SSL在IIS中配置HTTPS网站

     

使用SSL在IIS中配置HTTPS网站

     

    14,再回到证书申请页面,选择“查看挂起的证书申请的状态”

使用SSL在IIS中配置HTTPS网站

     

    15.在这个页面可以看到你之前申请的所有证书,多个的话有多条链接),点击其中一条。

使用SSL在IIS中配置HTTPS网站

     

    16.在这里,如果已经颁发的证书,就可以看到证书下载页面了,一般选择Base64编码,下载证书。

    下载证书链的话,可以把根CA的证书也一起下载。

使用SSL在IIS中配置HTTPS网站

     

    17.回到IIS,目录安全性的那个页面,还是点击“服务器证书”,此时界面已改变,选择“处理挂起的请求并安装证书”,下一步

使用SSL在IIS中配置HTTPS网站

     

    18.选择刚下载的证书,下一步

使用SSL在IIS中配置HTTPS网站

     

    19.填写SSL使用的端口,一般默认是443,不需要修改。至此,便完成了证书的申请。

使用SSL在IIS中配置HTTPS网站

     

    20.如果要强制使用HTTPS访问网站的话,在“目录安全性”标签页中,点击“编辑”按钮。

使用SSL在IIS中配置HTTPS网站

     

    21.钩选”要求安全通道(SSL)”一项

使用SSL在IIS中配置HTTPS网站

     

    22,此时,我们再刷新一下证书申请页面,就可以看到403.4的错误页面了,因为我们强制要求使用HTTPS来访问网站了。

    注意:如果不是整个网站要求使用HTTPS的话,也可以针对一个虚拟目录进行设置,方法同上。

使用SSL在IIS中配置HTTPS网站

     

    23.修改为HTTPS访问后,会提示安全警报,这里提示证书名与站点名不匹配,那是因为我们使用localhost来访问了。

    还记得上面申请证书时,提到的公用名称吗?就是这个了,当时我们填的是机器名,所以和localhost当然不匹配。

    这也是为什么如果IIS有对外的话,要填域名的原因了,否则就会提示此安全警报了。

    此处只需要将地址修改为:https://dier-vm03/certsrv,就不会提示安全警报了。

使用SSL在IIS中配置HTTPS网站

     

    24.扩展一下,不是每个用户都是懂技术的,当普通用户看到403.4错误,要求就不懂得加个S就能访问,那肿么办?

    其实很简单,在“自定义错误”标签页中,找到403.4指向的页面文件的位置,然后进去打开来。加一段脚本就搞定了。

    其实就是利用javascript判断是不是使用http的,如果是就自动跳转到https

             

    <script type="text/javascript">  

        var url = window.location.href;  

        if(url.indexOf("http:") > -1) window.location.href = url.replace("http:","https:");  

    </script>  

     

使用SSL在IIS中配置HTTPS网站

     

    好了,这个时候我们看这个网站的时候所有信息在网上就是以加密的方式来传送的了,任何人都无法再轻易了解其中的内容了。

        加密过的SSL会比普通的没有加密的WEB浏览的时候慢一点,主要是因为加密的隧道额外还要占用一点CPU的资源,对于那些没有任何秘密可言的WEB站点没有需要用加密的SSL通道。只要对于那些重要的目录和站点才有这个必要性。

     

上一篇:对文件直接访问权限设置的PHP代码

下一篇:php对文件夹管理的一些函数代码

评论列表
发表评论
称呼
邮箱
网址
验证码(*)
热评文章
相关阅读