正 文

Windows虚拟主机安全配置与优化


www.7dspace.com  更新日期:2005-10-23 1:51:35  七度空间


  5.IIS和权限设置

  为了使IIS运行的更稳定和安全我们需要修改它,如:删除一些不用的映射、日志的设置等。

  下面是我的IIS的设置情况:

  Internet信息服务-计算机名称-属性-WWW服务(编辑)-主目录-配置-应用程序映射,删除下面的应用程序映射:.htr、. idc、.printer、.cer、.shtm、.stm 、.cdx 。只保留.asp和.asa映射。对一般的应用比如运行ASP,已经够用了。多出那些无用的安全映射会给系统带来不必要的麻烦。

  在进程选项卡的脚本文件高速缓存中把放入高速缓存的最多ASP文件数设成300,以改善ASP文件的执行效率。在应用程序调试选项卡中选中"发送文本错误消息给客户"以防止通过错误消息来取得系统、网络、数据库的信息。

  在Internet信息服务-计算机名称-属性-WWW服务(编辑)-服务选项卡选中HTTP压缩的压缩静态文件,提高执行效率。在一个非系统分区中建立日志文件夹,来保存各个站点的日志。如我设置的分区是E,在分区中建立IISlog目录,用它来保存各个站点的日志文件,而不用系统默认的路径。把各个站点的日志指向IISlog文件夹中。

  设置如下:Internet服务管理器-Web站点-属性-Web站点选项卡-活动日志格式-属性-日志文件目录,把日志指向IISlog文件夹中。以便于以后我们查看日志的方便。为了保证系统的安全和各个站点FSO,在本地用户和组中为各个站点用户创建相应的用户,设置相应的密码,并把所属的默认组User删去,加入到guests组中。在各个Web站点的属性-目录安全性-匿名访问和验证控制-编辑-匿名访问使用帐号的对话框中选中自己站点相对应的用户帐户.我们在D盘各个站点文件夹的属性-安全选项卡去掉父系继承来的权限,把这个文件夹的访问权限设成redblood(这个用户是我改名后的管理员,我会在后面提到的)完全控制(FC)、SYSTEM(FC)、和Web站点对应用户的修改、读取及运行、列出文件夹目录、读取、写入权限。这样当其中的一个WEB站点被上传ASP木马,就不会危害其它的站点,因为他只有这个Web站点的权限而没有其它站点权限。

  把各个分区的权限设成只有redblood和system完全控制.但是要注意一点,如果你的页面文件通过设置而放到其它的分区中,比如我放到了E盘中,你除了给这个分区redblood、system的完全控制权限外还必须给这个分区everyone的读权限,否则重启的时候会报错!

  在C:\Program Files\Common Files文件夹属性对话框安全选项卡中,取消"允许将来自父系的可继承权限传播给该对象",访问权限设成redblood、system完全控制, everyone读取及运行、列出文件夹目录、读取。因为ASP连接数据库的时候会用到这个目录。然后把WINNT目录也按照同样的方法来设置成和 Common Files文件夹同样的权限。

  我们还要特殊设置一个目录那就是C:\WINNT\Temp,这个目录的访问权限是everyone修改、读取及运行、列出文件夹目录、读取、写入。

  把如下文件设置成只有redblood完全控制权限,取消父系继承来的权限。这些文件有:C:\winnt\sytem32文件夹和C:\winnt\sytem32\dllcache文件夹的net.exe、net1.exe、netstat、netsh、cacls、cmd.exe、ftp.exe、tftp.exe、at.exe、format.com、xcopy.exe.

  把装应用程序的目录我这里是f:\soft目录的访问权限设成redblood、system完全控制和everyone读取、读取和运行、列出文件夹目录的权限。禁用一些不安全的组件,如:Scripting.FileSystemObject、WScript.Shell、 Shell.Application组件。

  Scripting.FileSystemObject组件:

  我们可以修改对应项在注册表里面的名称和值:
  HKEY_CLASSES_ROOT\Scripting.FileSystemObject\
  HKEY_CLASSES_ROOT\Scripting.FileSystemObject\CLSID\项目的值

  WScript.Shell组件:  
  HKEY_CLASSES_ROOT\WScript.Shell\
  HKEY_CLASSES_ROOT\WScript.Shell.1\
  HKEY_CLASSES_ROOT\WScript.Shell\CLSID\项目的值
  HKEY_CLASSES_ROOT\WScript.Shell.1\CLSID\项目的值

  Shell.Application组件:
  HKEY_CLASSES_ROOT\Shell.Application\
  HKEY_CLASSES_ROOT\Shell.Application.1\
  HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值
  HKEY_CLASSES_ROOT\Shell.Application.1\CLSID\项目的值

  因为在前里我们已经单独的设置相应的Web站点,所以不必修改Scripting.FileSystemObject(fso)组件。

  在这里我直接注销下面两个组件:
  regsvr32 /u C:\WINNT\System32\wshom.ocx对应于WScript.Shell组件。
  regsvr32/u C:\WINNT\System32\shell32.dll对应于Shell.Application组件。

  禁止guests组的用户调用它:
  cacls C:\WINNT\system32\scrrun.dll /e /d guests
  cacls C:\WINNT\system32\shell32.dll /e /d guests

  前面在服务设置的时候我把Workstation服务禁用了,因为ASP木马运行候可以通过它来列出系统的用户和进程。所以为了安全考虑我们禁用它。

4页,页码:[1] [2] [3] [4] 

上一篇:MySQL准备升级推出MySQL 5.0
下一篇:妙用Maxthon清理收藏夹无效链接
作者:小胖子  来源:eviloctal ( 责任编辑:7dspace )
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐