iis 权限设置_win服务器

我们不应该把这归咎于 IIS 的不安全。如果对站点的每个目录都配以正确的权限,出现漏洞被人黑掉的机会还是很小的(Web 应用程序本身有问题和通过其它方式入侵黑掉服务器的除外)。下面是我在配置过程中总结的一些经验,希望对大家有所帮助。

  IIS Web 服务器的权限设置有两个地方,一个是 NTFS 文件系统本身的权限设置,另一个是 IIS 下网站->站点->属性->主目录(或站点下目录->属性->目录)面板上。这两个地方是密切相关的。下面以实例的方式来讲解如何设置权限。

IIS 下网站->站点->属性->主目录(或站点下目录->属性->目录)面板上有:

脚本资源访问
读取
写入
浏览
记录访问
索引资源
  6 个选项。这 6 个选项中,“记录访问”和“索引资源”跟安全性关系不大,一般都设置。但是如果前面四个权限都没有设置的话,这两个权限也没有必要设置。在设置权限时,记住这个规则即可,后面的例子中不再特别说明这两个权限的设置。

  另外在这 6 个选项下面的执行权限下拉列表中还有:


纯脚本
纯脚本和可执行程序
3 个选项。

  而网站目录如果在 NTFS 分区(推荐用这种)的话,还需要对 NTFS 分区上的这个目录设置相应权限,许多地方都介绍设置 everyone 的权限,实际上这是不好的,其实只要设置好 Internet 来宾帐号(IUSR_xxxxxxx)或 IIS_WPG 组的帐号权限就可以了。如果是设置 ASP、PHP 程序的目录权限,那么设置 Internet 来宾帐号的权限,而对于 ASP.NET 程序,则需要设置 IIS_WPG 组的帐号权限。在后面提到 NTFS 权限设置时会明确指出,没有明确指出的都是指设置 IIS 属性面板上的权限。

例1 —— ASP、PHP、ASP.NET 程序所在目录的权限设置:
  如果这些程序是要执行的,那么需要设置“读取”权限,并且设置执行权限为“纯脚本”。不要设置“写入”和“脚本资源访问”,更不要设置执行权限为“纯脚本和可执行程序”。NTFS 权限中不要给 IIS_WPG 用户组和 Internet 来宾帐号设置写和修改权限。如果有一些特殊的配置文件(而且配置文件本身也是 ASP、PHP 程序),则需要给这些特定的文件配置 NTFS 权限中的 Internet 来宾帐号(ASP.NET 程序是 IIS_WPG 组)的写权限,而不要配置 IIS 属性面板中的“写入”权限。

  IIS 面板中的“写入”权限实际上是对 HTTP PUT 指令的处理,对于普通网站,一般情况下这个权限是不打开的。

  IIS 面板中的“脚本资源访问”不是指可以执行脚本的权限,而是指可以访问源代码的权限,如果同时又打开“写入”权限的话,那么就非常危险了。

  执行权限中“纯脚本和可执行程序”权限可以执行任意程序,包括 exe 可执行程序,如果目录同时有“写入”权限的话,那么就很容易被人上传并执行木马程序了。

  对于 ASP.NET 程序的目录,许多人喜欢在文件系统中设置成 Web 共享,实际上这是没有必要的。只需要在 IIS 中保证该目录为一个应用程序即可。如果所在目录在 IIS 中不是一个应用程序目录,只需要在其属性->目录面板中应用程序设置部分点创建就可以了。Web 共享会给其更多权限,可能会造成不安全因素。

总结: 也就是说一般不要打开-主目录-(写入),(脚本资源访问) 这两项以及不要选上(纯脚本和可执行程序),选(纯脚本)就可以了.需要asp.net的应用程序的如果应用程序目录不止应用程序一个程序的可以在应用程序文件夹上(属性)-目录-点创建就可以了.不要在文件夹上选web共享.

例2 —— 上传目录的权限设置:
  用户的网站上可能会设置一个或几个目录允许上传文件,上传的方式一般是通过 ASP、PHP、ASP.NET 等程序来完成。这时需要注意,一定要将上传目录的执行权限设为“无”,这样即使上传了 ASP、PHP 等脚本程序或者 exe 程序,也不会在用户浏览器里就触发执行。

  同样,如果不需要用户用 PUT 指令上传,那么不要打开该上传目录的“写入”权限。而应该设置 NTFS 权限中的 Internet 来宾帐号(ASP.NET 程序的上传目录是 IIS_WPG 组)的写权限。

  如果下载时,是通过程序读取文件内容然后再转发给用户的话,那么连“读取”权限也不要设置。这样可以保证用户上传的文件只能被程序中已授权的用户所下载。而不是知道文件存放目录的用户所下载。“浏览”权限也不要打开,除非你就是希望用户可以浏览你的上传目录,并可以选择自己想要下载的东西。

总结: 一般的一些asp.php等程序都有一个上传目录.比如论坛.他们继承了上面的属性可以运行脚本的.我们应该将这些目录从新设置一下属性.将(纯脚本)改成(无).

例3 —— Access 数据库所在目录的权限设置:
  许多 IIS 用户常常采用将 Access 数据库改名(改为 asp 或者 aspx 后缀等)或者放在发布目录之外的方法来避免浏览者下载它们的 Access 数据库。而实际上,这是不必要的。其实只需要将 Access 所在目录(或者该文件)的“读取”、“写入”权限都去掉就可以防止被人下载或篡改了。你不必担心这样你的程序会无法读取和写入你的 Access 数据库。你的程序需要的是 NTFS 上 Internet 来宾帐号或 IIS_WPG 组帐号的权限,你只要将这些用户的权限设置为可读可写就完全可以保证你的程序能够正确运行了。

总结: Internet 来宾帐号或 IIS_WPG 组帐号的权限可读可写.那么Access所在目录(或者该文件)的“读取”、“写入”权限都去掉就可以防止被人下载或篡改了

例4 —— 其它目录的权限设置:
  你的网站下可能还有纯图片目录、纯 html 模版目录、纯客户端 js 文件目录或者样式表目录等,这些目录只需要设置“读取”权限即可,执行权限设成“无”即可。其它权限一概不需要设置。

  上面的几个例子已经包含了大部分情况下的权限设置,只要掌握了设置的基本原理,也就很容易地完成能其它情况下的权限设置。

时间: 2024-12-03 01:27:51

iis 权限设置_win服务器的相关文章

Windows下Apache应用环境塔建安全设置(目录权限设置)_win服务器

环境配置情况:apache安装目录:d:\www-s\apachephp目录:d:\www-s\php5mysql目录:d:\www-s\mysql网站根目录:d:\www\htdocs 专门为运行Apache运行所使用的用户:apache-u(可不隶属于任何用户组) PS:这里只说Windows下Apache应用环境相关的目录权限设置,至于其他基本的服务器目录权限设置就不提啦! Windows下Apache应用环境塔建目录安全设置操作步骤: 配置目录权限 Apache所在的根目录(也就是D盘)

Win2008下搭建php开发环境(IIS FastCGI版)_win服务器

注意所用到软件的版本,不同的版本会有不少差别,有可能最后会搭建不成功,而且各位童鞋也不用担心小狼所用版本会不会太老,因为这里所用的软件不是比较新的就是比较稳定的版本,完全可以满足大家的需要了,那就先看看要用到什么软件吧: 操作系统:Windows Server 2008(下文为了方便,用WS2008代替,经测试,此方法在win7下也有效) 服务器:IIS7.0或更新版本 1.mysql-essential-5.1.56-win32.msi:http://dev.mysql.com/downloa

服务器安全之iis权限设置篇

  IIS Web 服务器的权限设置有两个地方,一个是 NTFS 文件系统本身的权限设置,另一个是 IIS 下网站->站点->属性->主目录(或站点下目录->属性->目录)面板上.这两个地方是密切相关的.下面以实例的方式来讲解如何设置权限. IIS 下网站->站点->属性->主目录(或站点下目录->属性->目录)面板上有: 脚本资源访问 读取 写入 浏览 记录访问 索引资源   6 个选项.这 6 个选项中,"记录访问"和&q

让IIS支持任意扩展名和未知扩展名的下载(下载站设置)_win服务器

如果下载空间里面有asp,php文件不建议这样设置,如果这样设置了又不想让asp,php文件被别人下载可以使用. 第一步: 取消网站执行权限 2.为防止asp,php文件被下载,没有就不需要设置 让IIS支持任意扩展名和未知扩展名的下载 1. 打开 IIS Microsoft 管理控制台 (MMC),右键单击本地计算机名称,然后单击"属性". 2. 单击"MIME 类型". 3. 单击"新建". 4. 在"扩展名"框中,键入星

iis resin 配置 安全简单设置._win服务器

D:\jsp\jdk 装jdk D:\jsp\resin 放resin D:\jsp\web 网页文件 装jdk之前要弄好你的程序是用什么开发的,这个jdk不知道是不是不像.net那些高级兼容低级的.反正我之前装了jdk 1.6 网站就是出错.换了人家开放时用的jdk 1.5就好了 装好jdk和解压好resin 设置环境变量. CLASSPATH D:\jsp\jdk\lib\tools.jar;D:\jsp\jdk\lib\dt.jar JAVA_HOME D:\jsp\jdk RESIN_H

浅谈IIS安全配置_win服务器

1.VPS或者服务器分区要是NTFS的原因不说了,说多了也没用 2.禁止TCP/IP的NETBIOS 通过网络属性的绑定选项,废止NetBIOS与TCP/IP之间的绑定 3.网站右键权限user(最好一个网站建立一个用户,尽可能不要相同)中权限 写入 执行等权限慎用,写入之后有可能会sql注入 坑爹的~~我就挨过一次 4.iis权限配置(重点剖析) 在站点-属性-主目录有这几个权限设置 脚本资源访问 写入 浏览 记录访问 索引资源 这些我一般推荐就打开浏览和脚本访问 有的系统需求的话,就对应目录

Apache Wind2003 配置网站目录权限小结_win服务器

非常简单的权限设置,就是访问网站时会弹出用户名和密码,通过身份验证后可以正常浏览,如下图. 在Apache和Windows2003中配置起来也非常方便,主要参考了Apche的手册 1.建立密码文件 Apache在其安装目录的bin子目录中提供了htpasswd工具,用于建立密码文件: 复制代码 代码如下: htpasswd -b -c -m -d -s c:\password.txt username password 其中-m -d -s都是加密的方式,具体见参考手册 2.启用认证 其中方式有

Windows 操作系统的安全设置_win服务器

一.系统与磁盘格式选择 1.不要使用Ghost版的Windows XP系统 在选用操作系统时,最好不要选择Ghost版的Windows XP系统,因为使用此系统版本的用户,默认情况下会自动开启远程终端服务,并且还会存在一个弱口令形式的new账号,两者很容易被黑客利用,从而导致最后计算机被别有用心的人入侵.当然如果只有Ghost版的Windows XP系统安装盘也没关系,不过要注意的是请在系统安装完成后,依次单击"开始" →"运行"选项,在打开的"运行&qu

数据库写不进去IIS写入权限怎么设置_win服务器

经常有刚刚使用cms网站的朋友会提到,后台内容无法更新,如基本设置保存不了,数据库写不进去.如果出现这些问题的可以参考以下方法解决. 首先查看网站所在的硬盘是不是NTFS格式.如果是很有可能是Everyone权限问题,即Everyone 无权操作文件夹,操作方法: 第一:在文件夹的菜单栏中点"工具"--> 文件夹选项 --> 查看,取消[使用简单文件共享(推荐)的 √,然后确定. 第二:在网站所在的文件夹上点右键,选择"属性"-->安全,给Ever