如何用IIS建立高安全性Web服务器

      技术 2004-12-16 9:45
如何用IIS建立高安全性Web服务器

IIS(Internet Information Server)作为当今流行的Web服务器之一,提供了强大的Internet和Intranet服务功能,如何加强IIS的安全机制,建立一个高安全性能的Web服务器,已成为IIS设置中不可忽视的重要组成部分。

  本文将通过以下两个方面来阐述加强IIS安全机制的方法。

一、 以Windows NT的安全机制为基础
  作为运行在 Windows NT操作系统环境下的IIS,其安全性也应建立在Windows NT安全性的基础之上。

  1.应用NTFS文件系统

  NTFS可以对文件和目录进行管理,而FAT(文件分配表)文件系统只能提供共享级的安全,建议在安装Windows NT时使用NTFS系统。

  2.共享权限的修改

  在缺省情况下,每建立一个新的共享,其everyone用户就能享有“完全控制”的共享权限,因此,在建立新共享后要立即修改everyone缺省权限。

  3.为系统管理员账号更名

  域用户管理器虽可限制猜测口令的次数,但对系统管理员账号却用不上,这可能给非法用户带来攻击管理员账号口令的机会,通过域用户管理器对管理员账号更名不失为一种好办法。具体设置如下:

  (1) 启动“域用户管理器”;

  (2) 选中管理员账号;

  (3) 启动“用户”选单下的“重命名”对其进行修改。

  4.废止TCP/IP上的NetBIOS

  管理员可以通过构造目标站NetBIOS名与其IP地址之间的映像,对Internet上的其他服务器进行管理,非法用户也可从中找到可乘之机。如果这种远程管理不是必须的,应立即废止(通过网络属性的绑定选项,废止NetBIOS与TCP/IP之间的绑定)。

二、 设置IIS的安全机制
  1.安装时应注意的安全问题

  (1)避免安装在主域控制器上

  在安装IIS之后,将在安装的计算机上生成IUSR_Computername匿名账户,该账户被添加到域用户组中,从而把应用于域用户组的访问权限提供给访问Web服务器的每个匿名用户,这不仅给IIS带来巨大的潜在危险,而且还可能牵连整个域资源的安全,要尽可能避免把IIS安装在域控制器上,尤其是主域控制器。

  (2)避免安装在系统分区上

  把IIS安放在系统分区上,会使系统文件与IIS同样面临非法访问,容易使非法用户侵入系统分区。

  2.用户控制的安全性

  (1)匿名用户

  安装IIS后产生的匿名用户IUSR_Computername(密码随机产生),其匿名访问给Web服务器带来潜在的安全性问题,应对其权限加以控制。如无匿名访问需要,可取消Web的匿名服务。具体方法:

  ①启动ISM(Internet Server Manager);

  ②启动WWW服务属性页;

  ③取消其匿名访问服务。

  (2)一般用户

  通过使用数字与字母(包括大小写)结合的口令,提高修改密码的频率,封锁失败的登录尝试以及账户的生存期等对一般用户账户进行管理。

  3.登录认证的安全性

  IIS服务器提供对用户三种形式的身份认证。

  匿名访问:不需要与用户之间进行交互,允许任何人匿名访问站点,在这三种身份认证中的安全性是最低的。

  基本(Basic)验证:在此方式下用户输入的用户名和口令以明文方式在网络上传输,没有任何加密,非法用户可以通过网上监听来拦截数据包,并从中获取用户名及密码,安全性能一般。

  Windows NT请求/响应方式:浏览器通过加密方式与IIS服务器进行交流,有效地防止了窃听者,是安全性比较高的认证形式。这种方式的缺点是只有IE3.0及以上版本才支持。

  4.访问权限控制

  (1)文件夹和文件的访问权限:安放在NTFS文件系统上的文件夹和文件,一方面要对其权限加以控制,对不同的用户组和用户进行不同的权限设置;另外,还可利用NTFS的审核功能对某些特定用户组成员读文件的企图等方面进行审核,有效地通过监视如文件访问、用户对象的使用等发现非法用户进行非法活动的前兆,及时加以预防制止。具体方法:

  ①启动“域用户管理器”;

  ②启动“规则”选单下的“审核”选项;

  ③设置“审核规则”。

  (2)WWW目录的访问权限:已经设置成Web目录的文件夹,可以通过操作Web站点属性页实现对WWW目录访问权限的控制,而该目录下的所有文件和子文件夹都将继承这些安全性。WWW服务除了提供NTFS文件系统提供的权限外,还提供读取权限,允许用户读取或下载WWW目录中的文件;执行权限,允许用户运行WWW目录下的程序和脚本。具体设置方法:

  ①启动ISM(Internet服务器管理器);

  ②启动Web属性页并选择“目录”选项卡;

  ③选择WWW目录;

  ④选择“编辑属性”中的“目录属性”进行设置。

  5.IP地址的控制

  IIS可以设置允许或拒绝从特定IP发来的服务请求,有选择地允许特定节点的用户访问服务,你可以通过设置来阻止除指定IP地址外的整个网络用户来访问你的Web服务器。具体设置:

  (1) 启动ISM(Internet服务器管理器);

  (2) 启动Web属性页中“高级”选项卡;

  (3) 进行指定IP地址的控制设置。

  6.端口安全性的实现

  对于IIS服务,无论是WWW站点、FTP站点,还是NNTP、SMTP服务等都有各自监听和接收浏览器请求的TCP端口号(Post),一般常用的端口号为:WWW是80,FTP是21,SMTP是25,你可以通过修改端口号来提高IIS服务器的安全性。如果你修改了端口设置,只有知道端口号的用户才可以访问,但用户在访问时需要指定新端口号。

  7.IP转发的安全性

  IIS服务可提供IP数据包转发功能,此时,充当路由器角色的IIS服务器将会把从Internet接口收到的IP数据包转发到内部网中,禁用这一功能不失为提高安全性的好办法。具体设置如下:

  (1) 启动“网络属性”并选择“协议”选项卡;

  (2) 在TCP/IP属性中去掉“路由选择”。

  8.SSL安全机制

  IIS的身份认证除了匿名访问、基本验证和Windows NT请求/响应方式外,还有一种安全性更高的认证:通过SSL(Security Socket Layer)安全机制使用数字证书。

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

  (1) 启动ISM并打开Web站点的属性页;

  (2) 选择“目录安全性”选项卡;

  (3) 单击“密钥管理器”按钮;

  (4) 通过密钥管理器生成密钥对文件和请求文件;

  (5) 从身份认证权限中申请一个证书;

  (6) 通过密钥管理器在服务器上安装证书;

  (7) 激活Web站点的SSL安全性。

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

  SSL安全机制的实现,将增大系统开销,增加了服务器CPU的额外负担,从而降低了系统性能,在规划时建议仅考虑为高敏感度的Web目录使用。另外,SSL客户端需要使用IE 3.0及以上版本才能使用。
标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}