第1页共21页WEB+FTP+EMAIL的服务器的安全配置一、IIS和WEB站点文件夹权限配置1、IIS的安装。首先在D:根目录新建一个文件夹,用来做为WEB服务器站点的根目录,里面存放不同网站的文件夹。例如新建第一个网站存放文件的目录WebSite1,为了杜绝跨站攻击等各种相关安全问题,实现各个虚拟主机目录有独立权限的访问机制,我们要给每个目录分配一个匿名访问的用户帐号。依次右击桌面我的电脑-----管理------本地用户与组,然后新建一个用户IISUSER_01,选中用户不能更改密码和密码永不过期,去掉其余两项复选。如图:2、用户和组的配置①新建用户当然,如果您的WEBSERVER上有50个虚拟主机的话,可以再以同样的方法新增一些用户。可以给每个新增用户设定个密码,当然,其实为空也无大碍,因为这是用来为IIS匿名访问用户。而设的,对系统安全基本不会有影响。新增用户后因为默认新增用户自动加入Users组内,要分别去除掉它们User组的权限,并重新分别把它们只归属于Guests组,这一步一定要记住了,安全问题很关键。如图:第2页共21页②组权限设置设置完成后,为了方便统一划分WEB站点匿名访问用户的权限,再新建一个用户组,例如:为IISUSER_GROUP,把IISUSER_01用户添加IISUSER_GROUP组内。如图:第3页共21页③新建IIS用户组用户和组设置好后,我们再次打开d盘的,右击website1文件夹在属性配置的安全选项里,添加IISUSER_01用户权限(如果是单纯的HTML站点可以只给读取权限即可,如果是ASP+ACESS数据库或需要进行FSO操作的站点,同时还需要加上写入权限或一般我们将“完全控制”权给IISUSER_01用户)。如图:第4页共21页3、文件夹属性如果想进行更严密的安全配置,可以设置IISUSER_01用户在website1目录的权限为读取,在需要更新或写入操作的图片上传目录或数据库目录上才赋予写入权限,这样更为安全。做完这一步,网站的目录安全性就够了吗?不,利用一些FSO等木马一样还可以进行跨站进行读取,虽然跨站后没有权限修改,但比如用海洋顶端的文件夹打包功能,仍能进行跨站浏览系统磁盘及打包操作并下载!解决的方法是,右击C和D盘符选择属性中的安全选项,添加刚才我们建立的用户组(包含有IISUSER_01或新增的其它WEB网站目录用户),禁止该组的所有操作权限。(注意子目录继承权限的设置,WebSite1目录不要继承父目录的该权限。)如图:第5页共21页4、盘符属性这样一来,每个站点的浏览者(匿名访问用户)也只能对该站目录内文件进行一定的权限操作,即使ASP木马上传到其中一个网站目录,不会对别的站点造成任何影响,更不会对服务器的安全有任何危险。文件夹安全配置完后,我们下一步将进行IIS的配置。首先打开IIS管理器—》主目录,为了方便统一管理,将默认站点重命名为WebSite1并将主目录指向D:\目录。如图:第6页共21页5、IIS站点属性然后点击本窗口的配置按钮进入应用程序配置,在应用程序扩展栏中删除必须之外的任何无用映射,如图:第7页共21页6、应用程序配置只保留你确实需要用到的文件类型,比如ASP,ASPX,shtml等,一般的WEB服务器应用有了其中两个映射就够了,其它的映射在以往的自由微软漏洞中都发生过太多的安全漏洞事件,不信你可以去查查以前的漏洞列表。开始把不用的扩展一个个删除掉吧。配置完这一项,再点击本窗口上方的选项栏,一般在大部分的ASP程序中,我们都会在代码中调用父路径,我们在这一页中勾选中[启用父路径]的复选框,当然如果你确定你的程序不会有调用父路径的代码,最好不要选择此项,安全性会更强一些。最后,再点击本窗口上方的调试栏,在脚本错误的错误消息选项中,选中[向客户端发送下列文本错误消息]项。如图:第8页共21页7、用程序配置-调试否则ASP脚本出错时,出错信息很可能会向客户端显示你的数据库路径(即黑客常说的暴库),程序代码,结构,参数等重要信息。为了避免cgi漏洞扫描器扫描到IIS漏洞的安全隐患,在IIS管理面板中将HTTP404ObjectNotFound出错页面通过URL重定向到一个定制HTM文件,我们可以更改C:/WINDOWS/Help/iisHelp/common/404b.htm内容改为:METAhttp-equiv=REFRESHcontent=5;URL=您的网站首页,或者可在IIS管理面板中的自定义错误栏修改404错误页的HTML文件路径并做相应修改,如图:第9页共21页8、404错误页重定向最后,我们还要把之前在为该站点建立的匿名用户帐号绑定到此站点的目录安全性中的访问权限来。打开站点的属性页中的目录安全性选项卡,点身份验证和访问控制的编辑,如图:第10页共21页9、IIS目录安全性勾选启用匿名访问,并点击该栏的浏览按钮,选择我们之前为此站点(WebSite1)分配的匿名用户帐号IISUSER_01,如图:第11页共21页10、IIS匿名访问输入该用户的口令,提示再次输入确认密码。如无则留空即可。经过设置匿名访问帐号后,WebSite1网站的用户,使用ASP的FileSystemObject组件或其它木马程序入侵攻击服务器时,也只能访问“WebSite1”的网站目录:d:\下的内容,当试图访问其他内容时,会出现诸如没有权限、硬盘未准备好、500服务器内部错误等出错提示了(曾试过用asp海洋顶端2006木马进行全面测试,对服务器安全不构成任何影响)。如果你的WEB服务器需要放置多个WEB站点,那么最简单的方法就是配置主机头的方法。在这里以建立两个网站分别为和为例。首先将和地址。比如就存放在上面我们配置的d:\目录中,这样我们打开IIS管理器,右击WebSite1站点属性。如图:第12页共21页11、IIS管理器点击IP地址的高级按钮,修改IP地址的主机头为。如图:第13页共21页12、主机头设置这样,第一个站点就设置成功了,接着我们可以继续添加第二个站点了,以同样的方法,在添加时不用更改TCP/IP的端口,直接设定另一站点的主机头为就可以完成第二个站点的建立了。利用主机头方式建立多站点,必须使用友好网址才能访问,同样也可通过IP端口和多IP地址实现多站点,但这里不再详细介绍。如果需要做泛域名解析,则将该站点设定为空主机头,并在域名DNS建立一个*.域名.com解析到服务器IP就可以实现泛域名解析。最后,别忘了备份IIS的配置,在灾难性系统崩溃或IIS出现重大错误需要重新安装等紧急事故,可以快速的恢复IIS的安全配置,恢复站点的正常运行,备份功能很简单,IIS管理面板的操作工具栏—》所有任务—》进行备份。如图:第14页共21页13、备份IIS如想了解更多的备份及相关技术信息,请点击IIS帮助,在IIS6管理员指南中查阅。以下是摘自管理员指南中的一段相关备份的资料:实际上,配置数据库是指MetaBase.xml与MBSchema.xml文件的组合以及驻留内存的配置数据库。IIS配置信息存储在MetaBase.xml文件中,而配置数据库架构存储在MBSchema.xml文件中。当启动IIS时,这些文件会由存储层读取,然后通过管理基本对象(ABO)写入到内存中的配置数据库中…说到MetaBase.xml,随便提到一点IIS6常遇到的问题,就是无法上传大文件的问题,IIS6出于安全考虑,默认最大请求200K(也即最大提交数据限额为200KByte,204800Byte)。通常200K的大小是不能满足我们站点的需求的,解决的方法如下:1.关闭IISAdminService服务2.打开\Windows\system32\inesrv\metabase.xml3.修改ASPMaxRequestEntityAllowed的值为自己需要的,默认为204800,即限制上传文件最大200KB。4.启动IISAdminService其实如果你对编程有些了解,仔细查看metabase.xml文件中的内容,你会发现,很多IIS配置同样可以在里面修改,当然,除非你很熟悉,否则不建议直接修改。配置到这一步,我们已经成功的配置了一台安全性较高的WEB服务器,但要实现功能强大的应用于internet的服务器,单单仅WEB功能还是不够的,为了日常的文件上传下载及维护管理,我们还要架设功能强大的FTP服务器!二、FTP服务器安全权限配置假设某单位为了便于统一管理FTP服务器,希望能让不同的部门共享使用相同的一台FTP服务器,并希望不同部门用户登录进FTP服务器后,只能访问到本部门上传发布的信息,并且仅对这些信息进行读取或修改,而不能看到其他部门的上传信息。比方说,我们假设指定“D:\aaa”文件夹作为单位FTP服务器的主目录,并在该目录下创建两个名称分别为“bbb”与“ccc”的文件夹,现在我们要让B部门的员工以“bbb”用户帐号登录FTP服务器时,只能访问和读取“bbb”文件夹中的信息,而不能看到和访问“ccc”文件夹中的信息,那样一来多部门共享第15页共21页一台FTP服务器的安全性就能得到有效保证了。要实现上面的设置目的,我们不妨按照如下步骤进行设置:1、接着打开服务器系统的资源管理器窗口,找到该主机D盘下面的“aaa”文件夹,然后用鼠标双击该文件夹图标,在其后的文件夹窗口中用鼠标右击空白区域,并依次执行快捷菜单中的“新建”/“文件夹”命令,来在“aaa”文件夹下面分别创建好“bbb”与“ccc”文件夹,这两个文件夹就作为B部门和C部门员工的信息上传目录。2、下面返回到服务器系统桌面中,并依次单击“开始”/“设置”/“控制面板”命令,在其后的窗口中用鼠标依次双击“管理工具”、“Internet服务管理器”图标,打开Internet信息服务窗口,在该窗口的左侧显示区域,用鼠标右键单击服务器主机名称,从弹出的快捷菜单中依次执行“新建”/“FTP站点”命令,然后在弹出的向导窗口中依照提示(如图1所示),设置好FTP服务器的站点名称、IP地址,以及指定好FTP站点所用的主目录路径,这样就能顺利完成FTP服务器站点的架设操作了。3、开系统的控制面板窗口,并在其中双击“添加/删除程序”命令,然后选择“添加/删除Windows组件”项目,打开Windows组件安装向导窗口;选中该窗口列表中的“应用程序服务器”选项,并单击“详细信息”按钮,之后选中应用程序服务器列表窗口中的“Internet信息服务(IIS)”子组件,再单击一下“详细信息”按钮,打开如图2所示的列表界面,选中其中的“文件传输协议(FTP)服务”,最后单击“确定”按钮,那样一来服务器系统的FTP文件传输协议功能就能被正确安装成功了。第16页共21页架设好FTP服务器后,我们还需要对信息上传目录的访问权限进行合适设置,以确保每一个部门的员工只能使用特定帐号登录、访问各自的信息传输目录,下面就是具体的设置步骤:首先按照前面步骤打开Internet信息服务窗口,在该窗口的左侧显示区域,用鼠标右键单击目标FTP站点,从弹出的快捷菜单中单击“属性”命令,打开目标FTP站点的属性设置窗口,单击该窗口中的“安全帐号”标签,进入到如图3所示的标签设置页面;检查该标签页面中的“允许匿名连接”项目是否处于选中状态,要是发现该选项已经被选中的话,那我们必须及时取消它的选中状态;其次单击图3标签页面中的“浏览”按钮,从随后出现的“选择用户或组”设置窗口中,依次将“bbb”、“ccc”用户帐号选中并导入进来,再单击“确认”按钮,返回到Internet信息服务列表窗口;第17页共21页图3接着打开服务器系统的资源管理器窗口,找到D盘下面的“aaa”目录,然后用鼠标右