安全设置 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 来宾帐号的权限,而对于 ASP.NET 程序,则需要设置 IIS_WPG 组的帐号权限。在后面提到 NTFS 权限设置时会明确指出,没有明确指出的都是指设置 IIS 属性面板上的权限。 例1 —— ASP、PHP、ASP.NET 程序所在目录的权限设置: 如果这些程序是要执行的,那么需要设置“读取”权限,并且设置执行权限为“纯脚本”。不要设置“写入”和“脚本资源访问”,更不要设置执行权限为“纯脚本和可执行程序”。NTFS 权限中不要给 IIS_WPG 用户组和 Internet 来宾帐号设置写和修改权限。如果...