iis的安全设置
IIS安全权限设置-电脑资料

IIS安全权限设置-电脑资料系统用户情况为:administrators 超级管理员(组)system 系统用户(内置安全主体)guests 来宾帐号(组)iusr_服务器名匿名访问web用户iwam_服务器名启动iis进程用户www_cnnsc_org 自己添加的用户、添加后删除Users(组)、删除后添加到guests来宾帐号(组)为加强系统安全、(guest)用户及(iusr_服务器名)用户均被禁用将访问web目录的全部账户设为guests组、去除其他的组■盘符安全访问权限△C:\盘 administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限△D:\盘(如果用户网站内容放置在这个分区中)、administrators(组) 完全控制权限△E:\盘 administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限△f:\盘 administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限△如有其他盘符类推下去.■目录安全访问权限▲c:\windows\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限▲c:\windows\system32\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限、iwam_服务器名(用户) 读取+运行权限▲c:\windows\temp\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限、guests(组) 完全控制权限▲C:\WINDOWS\system32\config\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限▲c:\Program Files\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限▲C:\Program Files\Common Files\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限、guests(组) 读取+运行权限▲c:\Documents and Settings\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限▲C:\Documents and Settings\All Users\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限▲C:\Documents and Settings\All Users\Application Data\△administrator s(组) 完全控制权限、system(内置安全主体) 完全控制权限▲C:\Documents and Settings\All Users\Application Data\Microsoft\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限▲C:\Documents and Settings\All Users\Application Data\Microsoft\HTML Help\△administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限■禁止系统盘下的EXE文件:net.exe、cmd.exe、tftp.exe、netstat.exe、regedit.exe、regedt32.exe、at.exe、attrib.exe、cacls.exe△些文件都设置成 administrators 完全控制权限■新建WWW(网站)根目录【administrators(组) 完全控制权限、system(内置安全主体) 完全控制权限】▲根目录里新建wwwroot目录▲网站根目录、网页请上传到这个目录△administrators(组) 完全控制权限△www_cnnsc_org(用户)完全控制权限▲根目录里新建logfiles目录▲网站访问日志文件、本目录不占用您的空间△administrators(组) 完全控制权限▲根目录里新建database目录▲数据库目录、用来存放ACCESS数据库△administrators(组) 完全控制权限▲根目录里新建others目录▲用于存放您的其它文件、该类文件不会出现在网站上△administrators(组) 完全控制权限△www_cnn sc_org(用户)完全控制权限▲在FTP(登陆消息文件里填)IIS日志说明:〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓欢迎您使用本虚拟主机.请使用CUTEFTP或者LEAFTP等软件上传您的网页.注意、如果上传不了、请把FTP软件的PASV模式关掉再试.您登陆进去的根目录为FTP根目录\--wwwroot网站根目录、网页请上传到这个目录.\--logfiles 网站访问日志文件、本目录不占用您的空间.\--database 数据库目录、用来存放ACCESS数据库.\--others 用于存放您的其它文件,该类文件不会出现在网站上.为了保证服务器高速稳定运行、请勿上传江湖游戏、广告交换、类网站、大型论坛、软件下载等耗费系统资源的程序.IIS日志说明\--Date 动作发生时的日期\--Time 动作发生时的时间\--s-sitename 客户所访问的Internet服务于以及实例号\--s-computername 产生日志条目的服务器的名字\--s-ip 产生日志条目的服务器的IP地址\--cs-method客户端企图执行的动作(例如GET方法)\--cs-uri-stem被访问的资源、例如Default.asp\--cs-uri-query 客户所执行的查询\--s-port 客户端连接的端口号\--cs-username通过身份验证访问服务器的用户名、不包括匿名用户\--c-ip 访问服务器的客户端IP地址\--cs(User-Agent) 客户所用的浏览器\--sc-status用HTTP或者FTP术语所描述的动作状态\--sc-win32-status用Microsoft Windows的术语所描述的动作状态〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓■禁止下载Access数据库△Internet 信息服务(IIS)管理器→网站→属性→主目录→配置→添加△可执行文件:C:\WINDOWS\twain_32.dll△扩展名:.mdb▲如果你还想禁止下载其它的东东△Internet 信息服务(IIS)管理器→网站→属性→主目录→配置→添加△可执行文件:C:\WINDOWS\twain_32.dll△扩展名:.(改成你要禁止的文件名)▲然后删除扩展名:shtml stm shtm cdx idc cer■防止列出用户组和系统进程:△开始→程序→管理工具→服务△找到 Workstation 停止它、禁用它■卸载最不安全的组件:△开始→运行→cmd→回车键▲cmd里输入:△regsvr32/u C:\WINDOWS\system32\wshom.ocx△del C:\WINDOWS\system32\wshom.ocx△regsvr32/u C:\WINDOWS\system32\shell32.dll△del C:\WINDOWS\system32\shell32.dll△也可以设置为禁止guests用户组访问■解除FSO上传程序小于200k限制:△在服务里关闭IIS admin service服务△打开 C:\WINDOWS\system32\inetsrv\MetaBase.xml△找到ASPMaxRequestEntityAllowed△将其修改为需要的值、默认为204800、即200K、把它修改为51200000(50M)、然后重启IIS admin service服务■禁用IPC连接△开始→运行→regedit△找到如下组建(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Ls a)中的(restrictanonymous)子键△将其值改为1即■清空远程可访问的注册表路径:△开始→运行→gpedit.msc△依次展开“计算机配置→Windows 设置→安全设置→本地策略→安全选项”△在右侧窗口中找到“网络访问:可远程访问的注册表路径”△然后在打开的窗口中、将可远程访问的注册表路径和子路径内容全部设置为空即■关闭不必要的服务△开始→程序→管理工具→服务△Telnet、TCP\IP NetBIOS Helper■解决终端服务许可证过期的办法△如果你服务器上已经开着终端服务、那就在添加删除程序里删除终端服务和终端授权服务△我的电脑--右键属性--远程---远程桌面、打勾、应用△重启服务器、OK了、再也不会提示过期了■取消关机原因提示△开始→运行→gpedit.msc△打开组策略编辑器、依次展开△计算机配置→管理模板→系统△双击右侧窗口出现的(显示“关闭事件跟踪程序”)△将(未配置)改为(已禁用)即可。
iis6.0安全设置

1、访问控制列表 (ACL) 指示哪些用户或组有访问或修改特定文件的权限。不是在每个文件上设置 ACL,而是为每种文件类型创建新目录,在每个目录上设置 ACL,然后允许文件从它们所在的目录中继承这些权限。单击“开始”,右键单击“我的电脑”,然后单击“资源管理器”。 浏览至包含网站内容的文件,然后单击网站内容的最上层的文件夹。在“文件”菜单中,单击“新建”,然后单击“文件夹”,以便在网站的内容目录中创建一个新文件夹。为文件夹命名,然后按 Enter 键。按 Ctrl 键,然后选择您想要保护的每个网页。右键单击这些网页,然后单击“复制”。 右键单击新文件夹,然后单击“粘贴”。( 注意: 如果您已经创建了到这些网页的链接,则必须更新这些链接以便反映站点内容的新位置。)
4、禁用 FileSystemObject 组件,ASP、Windows 脚本主机和其他编写脚本的应用程序使用 FileSystemObject (FSO) 组件来创建、删除、获取信息以及操纵驱动器、文件夹和文件。可考虑禁用 FSO 组件,但要注意,这也将删除字典对象。另外,验证是否没有其他程序需要这个组件:单击“开始”,单击“运行”,在“打开”框中键入 cmd,然后单击“确定”。 切换到 C:\Windows\system32 目录。在命令提示符处,键入 regsvr32 scrrun.dll /u ,然后按 Enter 键。出现:DllUnregisterServer in scrrun.dll succeeded,再确定。
五、保护网站和虚拟目录,将 Web 根目录和虚拟目录重新定位到非系统分区,以帮助防御目录遍历攻击。这些攻击允许攻击者执行操作系统程序和工具。由于这种攻击不能遍历所有驱动器,因此,将网站内容重新定位到另一个驱动器可以增强对这些攻击的防护。
8IIS安全配置

基本验证
有效的机器或网络使 用者帐户並具备「登 入本机」的权利 需Active Directory 环境下使用 IIS 5需设定可回复 的密码 有效的机器或网络使 用者帐户
沒有限制,适用各 种浏览器 IE 5 以上的浏览器
摘要式验证
整合的 Windows 验证
IE 浏览器
採用挑战/回应演算法验证, 高安全性
IIS安全配置 IIS安全配置
IIS 网站安全性管理策略与技术
网页应用程序安全
•应用程序锁定原则 •程序员定期资安教育 •应用程序隔离原则
资源存取控制
• • • • IP 地址/网域名称 地址/ 网页权限 NTFS权限 NTFS权限 身份验证
网页传输安全 监控
•稽核记录 •存取记录 •漏洞稽核
网站安全性 管理
.html)
设定网页目录与文件权限
身份验证 验证方法 IIS 身份验证方法
匿名验证 基本验证 摘要式验证 整合的 Windows 验证 凭证验证
使用IIS验证方法
预设启用匿名及整合的 Windows 验证。 只有在下列情况下,Web 服务器才可使用「基本」、「摘要式」 或整合的 Windows 验证方法: [匿名存取] 并没有被选取。 匿名存取失败或文件及目录的存取受到 NTFS 权限的限制。 摘要式及整合的 Windows 验证不能用于 FTP 站台 如果 .NET passport被选中,则无法使用其它验证方法 验证方法的使用优先级: 匿名 整合的 Windows 验证 摘要式验证 基本验证
备份Metabase与网页应用程序 IIS 记录与稽核 使用虚拟目录取代真实目录 利用群组原则控制IIS的安装 选择安全性的远程管理工具与方式
备份 IIS Metabase
IIS配置网站访问权限和安全

IIS配置网站访问权限和安全网站需要IIS配置的地方有很多,比如IIS配置端口、域名、主目录、默认文档等。
今天小编要跟大家分享的是IIS配置网站访问权限和安全。
默认状态下,允许所有的用户匿名连接 IIS 网站,即访问时不需要使用用户名和密码登录。
不过,如果对网站的安全性要求高,或网站中有机密信息,需要对用户限制,禁止匿名访问,而只允许特殊的用户账户才能进行访问。
1.IIS配置禁用匿名访问第一步,在 IIS 管理器中,选择欲设置身份验证的 Web 站点,如图8-18 所示。
第二步,在站点主页窗口中,选择“身份验证”,双击,显示“身份验证”窗口。
默认情况下,“匿名身份验证”为“启用”状态,如图 8-19 所示。
第三步,右击“匿名身份验证”,单击快捷菜单中的“禁用”命令,即可禁用匿名用户访问。
2.IIS配置使用身份验证在IIS 7.0 的身份验证方式中,还提供基本验证、Windows 身份验证和摘要身份验证。
需要注意的是,一般在禁止匿名访问时,才使用其他验证方法。
不过,在默认安装方式下,这些身份验证方法并没有安装。
可在安装过程中或者安装完成后手动选择。
第一步,在“服务器管理器”窗口中,展开“角色”节点,选择“Web 服务器(IIS)”,单击“添加角色服务”,显示如图8-20 所示的“选择角色服务”窗口。
在“安全性”选项区域中,可选择欲安装的身份验证方式。
第二步,安装完成后,打开 IIS 管理器,再打开“身份验证”窗口,所经安装的身份验证方式显示在列表中,并且默认均为禁用状态,如图 8-21 所示。
可安装的身份验证方式共有三种,区别如下。
①基本身份验证:该验证会“模仿”为一个本地用户(即实际登录到服务器的用户),在访问 Web 服务器时登录。
因此,若欲以基本验证方式确认用户身份,用于基本验证的Windows 用户必须具有“本地登录”用户权限。
默认情况下,Windows 主域控制器(PDC)中的用户账户不授予“本地登录”用户的权限。
iis服务器的安全设置

iis服务器的安全设置删掉c:/inetpub目录,删除iis不必要的映射首先是每一个web站点使用单独的iis用户,譬如这里,新建立了一个名为,权限为guest的。
在iis里的站点属性里"目录安全性"---"身份验证和访问控制"里设置匿名访问使用下列windows 用户帐户"的用户名密码都使用这个用户的信息.在这个站点相对应的web目录文件,默认的只给iis用户的读取和写入权限(后面有更bt的设置要介绍)。
在"应用程序配置"里,我们给必要的几种脚本执行权限:asp.aspx,php,asp,aspx默认都提供映射支持了的,对于php,需要新添加响应的映射脚本,然后在web服务扩展将asp,aspx都设置为允许,对于 php以及cgi的支持,需要新建web服务扩展,在扩展名(x):下输入 php ,再在要求的文件(e):里添加地址c:/php/sapi/php4isapi.dll ,并勾选设置状态为允许(s)。
然后点击确定,这样iis就支持php了。
支持cgi同样也是如此。
要支持aspx,还需要给web根目录给上users用户的默认权限,才能使aspx能执行。
另外在应用程序配置里,设置调试为向客户端发送自定义的文本信息,这样能对于有asp注入漏洞的站点,可以不反馈程序报错的信息,能够避免一定程度的攻击。
在自定义http错误选项里,有必要定义下譬如404,500等错误,不过有有时候为了调试程序,好知道程序出错在什么地方,建议只设置404就可以了。
iis6.0由于运行机制的不同,出现了应用程序池的概念。
一般建议10个左右的站点共用一个应用程序池,应用程序池对于一般站点可以采用默认设置,可以在每天凌晨的时候回收一下工作进程。
新建立一个站,采用默认向导,在设置中注意以下在应用程序设置里:执行权限为默认的纯脚本,应用程序池使用独立的名为:的程序池。
IIS服务器安全配置的三个要领

IIS服务器安全配置的三个要领1.基本配置打好补丁删除共享个人站长通常运用Windows服务器,但是我们通过租用或托管的服务器往往不会有专门的技能人员来实行安全配置,所以就导致了一些常见的基本漏洞仍然存在。
其实,只要通过基本的安装服务器补丁,就能防止大部分的漏洞入侵攻击。
在服务器安装好操作系统后,正式启用之前,就应该完成各种补丁的安装。
服务器的补丁安装要领与我们运用的xp 系统类似,这里就不再赘述。
做好了基本的补丁安装,更主要的就是配置可访问的端口了,通常服务器只须要开放提供Web服务的必需端口,其他不必要的端口都可以禁止。
不过须要留心的是,千万不要把管理服务器的远程端口3389也禁止了。
删除默认共享也是必须做的一项步骤,服务器开启共享后很有可能被病毒或黑客入侵,从而进一步提权或者删除文件,因此我们要尽量关闭文件共享。
删除默认共享可以采用多种方式,例如运用net share c$ /delete命令,就可以把c盘的默认共享功能关闭(图1)。
2.权限分配防止病毒木马入侵好的服务器权限配置可以将危害减少到最低,如果每个IIS站点的权限配置都不同,黑客就很难通过旁注攻击等方式入侵整个服务器。
这里就基本介绍一下权限配置的要领。
在系统中权限是按照用户的方式来划分的,要管理用户,可以在服务器中依次打开“开始→程序→管理工具→计算机管理→本地用户和组”,就可以看到管理服务器中所有的系统用户和用户组了(图2)。
在为服务器分区的时候须要把所有的硬盘都分为NTFS分区,然后就可以配置每个分区对每个用户或组开放的权限。
要领是在须要配置权限的文件夹上点击右键,选择“属性→安全”,即可配置文件或文件夹的权限了。
对于站点来说,须要为每个站点分配一个IIS匿名用户,这样当用户访问你的站点文件的时候,所具有的权限最多只有该站点目录,可以很好地防止其他站点被入侵。
3.组件管理让不安全组件通通消散服务器默认支持很多组件,但是这些组件也会成为危害,最危险的组件是wsh和shell,因为它们可以运行服务器硬盘里的exe程序,比如它们可以运行提权程序来提升Serv-u权限甚至用Serv-u来运行更高权限的系统程序。
实验1 操作系统安全技术(2)-IIS的安全性设置

实验1 操作系统安全技术(2)-IIS的安全性设置1. 实验目的通过实验了解Windows操作系统中Web服务器、FTP服务器的安全漏洞及其防范措施,实现Web服务器和FTP服务器的安全配置。
2. 实验原理IIS(Internet Information Server)是Windows系统中的Internet信息和应用程序服务器。
利用IIS可以配置Windows平台方便地提供并且和Windows系统管理功能完美的融合在一起,使系统管理人员获得和Windows系统完全一致的管理。
IIS4.0和IIS5.0的应用非常广,但由于这两个版本的IIS存在很多安全漏洞,它的使用也带来了很多安全隐患。
IIS常见漏洞包括idc&ida漏洞、.htr漏洞、NT Site ServerAdsamples 漏洞、.printer漏洞、Unicode解析错误漏洞、Webdav漏洞等。
因此,了解如何加强Web服务器、FTP服务器酌安全性,防范由IIS漏洞造成的入侵就显得尤为重要。
在下面的实验中通过对Web服务器和FTP服务器的安全配置,了解其防范方法。
我们可以手动进行IIS的安全配置,包括Web服务器、FTP服务器和SMTP服务器,也可以利用一些安全工具来进行。
IISlockdown是由微软开发的IIS安全配置工具,它按照模板的安全配置选项,通过关闭IIS服务器上的某些不必要的特性和服务,从而减少受攻击的威胁。
此工具还与URLscan等协同工作,提供了多层次的防御和保护。
3. 实验环境Windows2000/XP系统,完全安装IIS服务。
4. 实验内容(1)用IIS建立高安全性的Web服务器1)删除不必要的虚拟目录。
打开\wwwroot文件夹,删除安装IIS时自动建立的多余目录。
最好将网站发布目录建立在系统分区以外,至少不能与wwwroot等同。
2)停止默认Web站点。
3)分类Web文件。
将文件按类保存在相应的目录中,设置每一目录的权限。
IIS服务器之Web服务器安全设置

IS服务器之Web服务安全设置IIS服务器之Web服务安全设置,一般安装IIS用windows server 家族,现在一般用windows server 2003 或以上版本,而windows server 2000已经退出市场,windows server 2003 里面的IIS 6.0 功能强大,在安全性方面很好,就IIS 6.0 服务安全设置举例,如下:>一.删除默认共享.关闭139.445端口选择“ 计算机管理” 程序,选择“ 共享文件夹” ,在相应的共享文件夹上按右键,选择“ 停止” 共享即可。
不过在系统重新启动后, IPC$ 和printer$ 会再次共享。
IPC$ 和 printer$工作的端口是139和445.咱们来手工关闭.查询共享端口命令:开始>>运行>>输入cmd进入DOS命令模式>>输入netstat-an>>敲击回车显示结果!关闭445端口的方法:(445端口是文件共享.打印机共享通讯端口.默认是开放的.)运行-regedit修改注册表,添加一个键值Hive:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NetBT\Parameters 添加DWORD值:SMBDeviceEnabled右键单击“SMBDeviceEnabled”值,选择“修改”在出现的“编辑DWORD值”对话框中,在“数值数据”下,输入“0”,单击“确定”按钮,完成设置。
从启电脑.即可关闭445端口关闭139端口的方法:(139端口开启都是由于NetBIOS这个网络协议在使用它,Netbios网络基本输入输出系统。
是1983年IBM开发的一套网络标准,微软在这基础上继续开发。
微软的客户机/服务器网络系统都是基于NetBIOS的。
在构建的网络系统中,对每一台主机的唯一标识信息是它的NetBIOS名。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
安全设置IIS 中的权限用 IIS 来做 Web 服务器的人一定也不少。
说实话,我觉得 IIS 还是不错的,尤其是Windows 2003 的 IIS 6(马上 Longhorn Server 的 IIS 7 也就要来了,相信会更好),性能和稳定性都相当不错。
但是我发现许多用 IIS 的人不太会设置 Web 服务器的权限,因此,出现漏洞被人黑掉也就不足为奇了。
但我们不应该把这归咎于 IIS 的不安全。
如果对站点的每个目录都配以正确的权限,出现漏洞被人黑掉的机会还是很小的(Web 应用程序本身有问题和通过其它方式入侵黑掉服务器的除外)。
下面是我在配置过程中总结的一些经验,希望对大家有所帮助。
IIS Web 服务器的权限设置有两个地方,一个是 NTFS 文件系统本身的权限设置,另一个是IIS 下网站->站点->属性->主目录(或站点下目录->属性->目录)面板上。
这两个地方是密切相关的。
下面我会以实例的方式来讲解如何设置权限。
IIS 下网站->站点->属性->主目录(或站点下目录->属性->目录)面板上有:∙脚本资源访问∙读取∙写入∙浏览∙记录访问∙索引资源6 个选项。
这 6 个选项中,“记录访问”和“索引资源”跟安全性关系不大,一般都设置。
但是如果前面四个权限都没有设置的话,这两个权限也没有必要设置。
在设置权限时,记住这个规则即可,后面的例子中不再特别说明这两个权限的设置。
另外在这 6 个选项下面的执行权限下拉列表中还有:∙无∙纯脚本∙纯脚本和可执行程序3 个选项。
而网站目录如果在 NTFS 分区(推荐用这种)的话,还需要对 NTFS 分区上的这个目录设置相应权限,许多地方都介绍设置 everyone 的权限,实际上这是不好的,其实只要设置好 I nternet 来宾帐号(IUSR_xxxxxxx)或 IIS_WPG 组的帐号权限就可以了。
如果是设置 ASP、PHP 程序的目录权限,那么设置 Internet 来宾帐号的权限,而对于 程序,则需要设置 IIS_WPG 组的帐号权限。
在后面提到 NTFS 权限设置时会明确指出,没有明确指出的都是指设置 IIS 属性面板上的权限。
例1 —— ASP、PHP、 程序所在目录的权限设置:如果这些程序是要执行的,那么需要设置“读取”权限,并且设置执行权限为“纯脚本”。
不要设置“写入”和“脚本资源访问”,更不要设置执行权限为“纯脚本和可执行程序”。
N TFS 权限中不要给 IIS_WPG 用户组和 Internet 来宾帐号设置写和修改权限。
如果有一些特殊的配置文件(而且配置文件本身也是 ASP、PHP 程序),则需要给这些特定的文件配置 N TFS 权限中的 Internet 来宾帐号( 程序是 IIS_WPG 组)的写权限,而不要配置IIS 属性面板中的“写入”权限。
IIS 面板中的“写入”权限实际上是对 HTTP PUT 指令的处理,对于普通网站,一般情况下这个权限是不打开的。
IIS 面板中的“脚本资源访问”不是指可以执行脚本的权限,而是指可以访问源代码的权限,如果同时又打开“写入”权限的话,那么就非常危险了。
执行权限中“纯脚本和可执行程序”权限可以执行任意程序,包括 exe 可执行程序,如果目录同时有“写入”权限的话,那么就很容易被人上传并执行木马程序了。
对于 程序的目录,许多人喜欢在文件系统中设置成 Web 共享,实际上这是没有必要的。
只需要在 IIS 中保证该目录为一个应用程序即可。
如果所在目录在 IIS 中不是一个应用程序目录,只需要在其属性->目录面板中应用程序设置部分点创建就可以了。
Web 共享会给其更多权限,可能会造成不安全因素。
例2 ——上传目录的权限设置:用户的网站上可能会设置一个或几个目录允许上传文件,上传的方式一般是通过 ASP、PHP、 等程序来完成。
这时需要注意,一定要将上传目录的执行权限设为“无”,这样即使上传了 ASP、PHP 等脚本程序或者 exe 程序,也不会在用户浏览器里就触发执行。
同样,如果不需要用户用 PUT 指令上传,那么不要打开该上传目录的“写入”权限。
而应该设置 NTFS 权限中的 Internet 来宾帐号( 程序的上传目录是 IIS_WPG 组)的写权限。
如果下载时,是通过程序读取文件内容然后再转发给用户的话,那么连“读取”权限也不要设置。
这样可以保证用户上传的文件只能被程序中已授权的用户所下载。
而不是知道文件存放目录的用户所下载。
“浏览”权限也不要打开,除非你就是希望用户可以浏览你的上传目录,并可以选择自己想要下载的东西。
例3 —— Access 数据库所在目录的权限设置:许多 IIS 用户常常采用将 Access 数据库改名(改为 asp 或者 aspx 后缀等)或者放在发布目录之外的方法来避免浏览者下载它们的 Access 数据库。
而实际上,这是不必要的。
其实只需要将 Access 所在目录(或者该文件)的“读取”、“写入”权限都去掉就可以防止被人下载或篡改了。
你不必担心这样你的程序会无法读取和写入你的 Access 数据库。
你的程序需要的是 NTFS 上 Internet 来宾帐号或 IIS_WPG 组帐号的权限,你只要将这些用户的权限设置为可读可写就完全可以保证你的程序能够正确运行了。
例4 ——其它目录的权限设置:你的网站下可能还有纯图片目录、纯 html 模版目录、纯客户端 js 文件目录或者样式表目录等,这些目录只需要设置“读取”权限即可,执行权限设成“无”即可。
其它权限一概不需要设置。
IIS权限安全设置全攻略虽然Apache 的名声可能比IIS 好,但我相信用IIS 来做Web 服务器的人一定也不少。
说实话,我觉得IIS 还是不错的,尤其是Windows 2003 的IIS 6(马上Longhorn Server 的IIS 7 也就要来了,相信会更好),性能和稳定性都相当不错。
但是我发现许多用IIS 的人不太会设置Web 服务器的权限,因此,出现漏洞被人黑掉也就不足为奇了。
但我们不应该把这归咎于IIS 的不安全。
如果对站点的每个目录都配以正确的权限,出现漏洞被人黑掉的机会还是很小的(Web 应用程序本身有问题和通过其它方式入侵黑掉服务器的除外)。
下面是我在配置过程中总结的一些经验,希望对大家有所帮助。
IIS Web 服务器的权限设置有两个地方,一个是NTFS 文件系统本身的权限设置,另一个是IIS 下网站->站点->属性->主目录(或站点下目录->属性->目录)面板上。
这两个地方是密切相关的。
下面我会以实例的方式来讲解如何设置权限。
IIS 下网站->站点->属性->主目录(或站点下目录->属性->目录)面板上有:脚本资源访问读取写入浏览记录访问索引资源6 个选项。
这6 个选项中,“记录访问”和“索引资源”跟安全性关系不大,一般都设置。
但是如果前面四个权限都没有设置的话,这两个权限也没有必要设置。
在设置权限时,记住这个规则即可,后面的例子中不再特别说明这两个权限的设置。
另外在这6 个选项下面的执行权限下拉列表中还有:无纯脚本纯脚本和可执行程序3 个选项。
而网站目录如果在NTFS 分区(推荐用这种)的话,还需要对NTFS 分区上的这个目录设置相应权限,许多地方都介绍设置everyone 的权限,实际上这是不好的,其实只要设置好Internet 来宾帐号(IUSR_xxxxxxx)或IIS_WPG 组的帐号权限就可以了。
如果是设置ASP、PHP 程序的目录权限,那么设置Internet 来宾帐号的权限,而对于 程序,则需要设置IIS_WPG 组的帐号权限。
在后面提到NTFS 权限设置时会明确指出,没有明确指出的都是指设置IIS 属性面板上的权限。
例1 —— ASP、PHP、 程序所在目录的权限设置:如果这些程序是要执行的,那么需要设置“读取”权限,并且设置执行权限为“纯脚本”。
不要设置“写入”和“脚本资源访问”,更不要设置执行权限为“纯脚本和可执行程序”。
NTFS 权限中不要给IIS_WPG 用户组和Internet 来宾帐号设置写和修改权限。
如果有一些特殊的配置文件(而且配置文件本身也是ASP、PHP 程序),则需要给这些特定的文件配置NTFS 权限中的Internet 来宾帐号( 程序是IIS_WPG 组)的写权限,而不要配置IIS 属性面板中的“写入”权限。
IIS 面板中的“写入”权限实际上是对HTTP PUT 指令的处理,对于普通网站,一般情况下这个权限是不打开的。
IIS 面板中的“脚本资源访问”不是指可以执行脚本的权限,而是指可以访问源代码的权限,如果同时又打开“写入”权限的话,那么就非常危险了。
执行权限中“纯脚本和可执行程序”权限可以执行任意程序,包括exe 可执行程序,如果目录同时有“写入”权限的话,那么就很容易被人上传并执行木马程序了。
对于 程序的目录,许多人喜欢在文件系统中设置成Web 共享,实际上这是没有必要的。
只需要在IIS 中保证该目录为一个应用程序即可。
如果所在目录在IIS 中不是一个应用程序目录,只需要在其属性->目录面板中应用程序设置部分点创建就可以了。
Web 共享会给其更多权限,可能会造成不安全因素。
剑心总结:也就是说一般不要打开-主目录-(写入),(脚本资源访问) 这两项以及不要选上(纯脚本和可执行程序),选(纯脚本)就可以了.需要的应用程序的如果应用程序目录不止应用程序一个程序的可以在应用程序文件夹上(属性)-目录-点创建就可以了.不要在文件夹上选web共享.例2 ——上传目录的权限设置:用户的网站上可能会设置一个或几个目录允许上传文件,上传的方式一般是通过ASP、PHP、 等程序来完成。
这时需要注意,一定要将上传目录的执行权限设为“无”,这样即使上传了ASP、PHP 等脚本程序或者exe 程序,也不会在用户浏览器里就触发执行。
同样,如果不需要用户用PUT 指令上传,那么不要打开该上传目录的“写入”权限。
而应该设置NTFS 权限中的Internet 来宾帐号( 程序的上传目录是IIS_WPG 组)的写权限。
如果下载时,是通过程序读取文件内容然后再转发给用户的话,那么连“读取”权限也不要设置。
这样可以保证用户上传的文件只能被程序中已授权的用户所下载。
而不是知道文件存放目录的用户所下载。
“浏览”权限也不要打开,除非你就是希望用户可以浏览你的上传目录,并可以选择自己想要下载的东西。
剑心总结:一般的一些asp.php等程序都有一个上传目录.比如论坛.他们继承了上面的属性可以运行脚本的.我们应该将这些目录从新设置一下属性.将(纯脚本)改成(无).例3 —— Access 数据库所在目录的权限设置:许多IIS 用户常常采用将Access 数据库改名(改为asp 或者aspx 后缀等)或者放在发布目录之外的方法来避免浏览者下载它们的Access 数据库。