由于NT系统的易维护性,越来越多的中小企业在自己的网站上和内部办公管理系统上采用它,而且很多都是用默认的IIS来做WEB服务器使用。当然不能否认近来威胁NT系统的几个漏洞都是由于IIS配置不当造成的,而且可以预见,未来IIS还会被发现很多新的漏洞和安全问题,但只要我们做好合理的安全配置,还是可以避免很多安全隐患的。本文并没有系统的去讲如何全面安全的配置IIS,我只是从利用SSL加密HTTP通道来讲如果加强IIS安全的。
一、建立SSL安全机制
IIS的身份认证除了匿名访问、基本验证和Windows NT请求/响应方式外,还有一种安全性更高的认证,就是通过SSL(Security Socket Layer)安全机制使用数字证书。SSL(加密套接字协议层)位于HTTP层和TCP层之间,建立用户与服务器之间的加密通信,确保所传递信息的安全性。SSL是工作在公共密钥和私人密钥基础上的,任何用户都可以获得公共密钥来加密数据,但解密数据必须要通过相应的私人密钥。使用SSL安全机制时,首先客户端与服务器建立连接,服务器把它的数字证书与公共密钥一并发送给客户端,客户端随机生成会话密钥,用从服务器得到的公共密钥对会话密钥进行加密,并把会话密钥在网络上传递给服务器,而会话密钥只有在服务器端用私人密钥才能解密,这样,客户端和服务器端就建立了一个惟一的安全通道。
建立了SSL安全机制后,只有SSL允许的客户才能与SSL允许的Web站点进行通信,并且在使用URL资源定位器时,输入https:// ,而不是http://。
简单的说默认情况下我们所使用的HTTP协议是没有任何加密措施的,所有的消息全部都是以明文形式在网络上传送的,恶意的攻击者可以通过安装监听程序来获得我们和服务器之间的通讯内容。这点危害在一些企业内部网络中尤其比较大,对于使用HUB的企业内网来说简直就是没有任何安全可讲因为任何人都可以在一台电脑上看到其他人在网络中的活动,对于使用交换机来组网的网络来说虽然安全威胁性要小很多,但很多时候还是会有安全突破口,比如没有更改交换机的默认用户和口令,被人上去把自己的网络接口设置为侦听口,依然可以监视整个网络的所有活动。
所以全面加密整个网络传输隧道的确是个很好的安全措施,很可惜的是现在网络上有关于具体给IIS配置SSL的文章并不是很多,我简单的摸索了下把我的经验拿出来给大家分享。
二、操作办法
以Windows2000服务器版本的来做例子讲解的,我们首先需要在控制面板里的填加删除WINDOWS组件中去安装证书服务,这个服务在默认安装中是没有安装在系统里的,需要安装光盘来安装。
由于我们是第一次配置,所以选择创建一个新的证书。用默认的站点名称和加密位长设置就可以了。颁发成功以后我们在颁发的证书里找到刚才颁发的证书,双击其属性栏目然后在详细信息里选择将证书复制到文件。我们需要把证书导出到一个文件,这里我们把证书导出到c: sql.cer这个文件里。重新回到IIS的WEB管理界面里重新选择证书申请,这个时候出来的界面就是挂起的证书请求了。