asp提供了强大的文件系统访问能力,可以对服务器硬盘上的任何文件进行读、写、复制、删除、改名等操作,这给学校网站的安全带来巨大的威胁。现在很多校园主机都遭受过fso木马的侵扰。但是禁用fso组件后,引起的后果就是所有利用这个组件的asp程序将无法运行,无法满足客户的需求。如何既允许filesystemobject组件,又不影响服务器的安全性呢(即:不同虚拟主机用户之间不能使用该组件读写别人的文件)?以下是笔者多年来摸索出来的经验:
第一步是有别于windows 2000设置的关键:右击c盘,点击“共享与安全”,在出现在对话框中选择“安全”选项卡,将everyone、users组删除,删除后如果你的网站连asp程序都不能运行,请添加iis_wpg组(图1),并重启计算机。
经过这样设计后,fso木马就已经不能运行了。如果你要进行更安全级别的设置,请分别对各个磁盘分区进行如上设置,并为各个站点设置不同匿名访问用户。下面以实例来介绍(假设你的主机上e盘abc文件夹下设abc.com站点):
1. 打开“计算机管理→本地用户和组→用户”,创建abc用户,并设置密码,并将“用户下次登录时须更改密码”前的对号去掉,选中“用户不能更改密码”和“密码永不过期”,并把用户设置为隶属于guests组。
2. 右击e:abc,选择“属性→安全”选项卡,此时可以看到该文件夹的默认安全设置是“everyone”完全控制(视不同情况显示的内容不完全一样),删除everyone的完全控制(如果不能删除,请点鱗高级]按钮,将“允许父项的继承权限传播”前面的对号去掉,并删除所有),添加administrators及abc用户对本网站目录的所有安全权限。
3. 打开iis管理器,右击abc.com主机名,在弹出的菜单中选择“属性→目录安全性”选项卡,点击身份验证和访问控制的[编辑],弹出图2所示对话框,匿名访问用户默认的就是“iusr_机器名”,点击[浏览],在“选择用户”对话框中找到前面创建的abc账户,确定后重复输入密码。
经过这样设置,访问网站的用户就以abc账户匿名身份访问e:abc文件夹的站点,因为abc账户只对此文件夹有安全权限,所以他只能在本文件夹下使用fso。
常见问题:
如何解除fso上传程序小于200k限制?
先在服务里关闭iis admin service服务,找到windows\system32\inesrv目录下的metabase.xml并打开,找到aspmaxrequestentityallowed,将其修改为需要的值。默认为204800,即200k,把它修改为51200000(50m),然后重启iis admin service服务。
asp提供了强大的文件系统访问能力,可以对服务器硬盘上的任何文件进行读、写、复制、删除、改名等操作,这给学校网站的安全带来巨大的威胁。现在很多校园主机都遭受过fso木马的侵扰。但是禁用fso组件后,引起的后果就是所有利用这个组件的asp程序将无法运行,无法满足客户的需求。如何既允许filesystemobject组件,又不影响服务器的安全性呢(即:不同虚拟主机用户之间不能使用该组件读写别人的文件)?以下是笔者多年来摸索出来的经验:
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器