IIS6下ASP.NET站点的权限配置

作者:heero 来源:heero博客 时间:2010-06-26 13:12:00 

以前我们学校的服务器经常中毒,而且基本上是一个网站中毒而牵连到其他的网站。这无非是服务器的权限配置没做好,让黑客们利用一个大权限用户把整台服务器都给黑了。

其实在NTFS格式的分区下,做权限配置非常简单。

  1. 为每个站点创建一个Windows用户,这个用户仅拥有站点所在目录及其子目录的读写权限。

  2. 把创建好的用户设为对应站点的匿名访问账户,访客就是以这个用户的身份访问网站的。

在这样的规则下,用户A只能操作站点A,用户B只能操作站点B。即使站点A中毒了,由于用户A没有操作站点B的权限,所以站点B不会受影响。

上个月买了VPS后,我也是用这个方法配置现在这个Blog,结果一运行就出错。错误信息的大概意思是无法读取web.config。我初步推断这是ASP.NET的进程用了另外一个用户读取站点中的文件,但由于没有权限而被拒绝访问了。折腾了一番后,终于搞清楚这跟应用程序池有关系。

应用程序池是将一个或多个应用程序链接到一个或多个工作进程的集合的配置。因为应用程序池中的应用程序与其他应用程序被工作进程边界分开,某个应用程序池中的应用程序不会受到其他应用程序池中应用程序所产生的问题的影响。

ASP.NET的站点其实是通过应用程序池的账户来运行的。默认情况下,应用程序池以“Network Service”身份进行操作,而站点目录并没有这个用户的操作权限。

接着,我把应用程序池的账户改成了站点的匿名访问帐号,结果还是出错。原来应用程序池的账户必须具有IIS_WPG组的权限,把匿名访问帐号设置成从属于改组就可以了。

这样设置以后,虽然安全性有所提升,但问题还是有的。原因在于,IIS_WPG组的权限也不小,其中就包括系统盘某些目录的访问权限。确实是没有最安全,只有更安全。欢迎有经验的朋友来指教。

标签:IIS6,配置,应用程序池
0
投稿

猜你喜欢

  • 自拍达人首选 几款免费大头贴软件推荐

    2009-11-23 16:23:00
  • CentOS使用本地yum源搭建LAMP环境图文教程

    2023-10-12 18:20:12
  • docker搭建es集群实现过程详解

    2023-05-27 19:00:10
  • 一个完美网站的101项指标.第八部分.SEO

    2008-03-01 09:33:00
  • 使用Docker构建一个Git镜像使用clone仓库

    2023-09-04 23:00:50
  • 使用WordPress添加新页面功能使用页面模板

    2010-03-22 13:16:00
  • linux中误删除程序包恢复实例

    2023-07-15 16:07:25
  • 揭秘UCenter Home 2.0表态功能

    2009-08-05 20:37:00
  • SMTP协议-邮件发送PHP程序代码

    2010-03-24 18:40:00
  • LNMP系列教程之 解决sendmail不能发送邮件问题

    2023-11-03 02:30:36
  • 与google团队对话

    2008-12-29 11:02:00
  • 如何设置GoDaddy域名解析服务器

    2010-04-23 12:42:00
  • 小说类网站 SEO品牌效果与排名分析

    2009-01-07 14:25:00
  • 在 CentOS 8 / RHEL 8 上安装 VirtualBox 6.0的详细教程

    2022-02-02 10:09:08
  • 一次Linux修改MySQL配置不生效的问题解决

    2023-06-29 20:41:01
  • Apache vs Lighttpd谁更好?

    2007-08-27 13:28:00
  • Apache配置文件中的deny与allow小结

    2021-01-07 18:29:28
  • Google PR劫持的几个方法(序)

    2008-09-27 19:15:00
  • 从一个301重定向案例 看需要注意的地方

    2009-01-09 16:35:00
  • 详解用nginx+WordPress搭建个人博客全流程

    2022-03-12 09:39:03
  • asp之家 网站运营 m.aspxhome.com