当前位置:操作系统 > Unix/Linux >>

大量虚拟主机用户如何限制PHP权限

大量虚拟主机用户如何限制PHP权限

  目前我们正在搭建免费空间系统,详情请见http://www.xianfeng.net

  服务器采用FreeBSD+Apache+PHP

  目前存在一个关键问题,问题详细如下:

  我们拟开放PHP权限,但是考察目前国内提供PHP的站点,发现基本上存在这样子的问题:

  usera

  userb

  在同一个服务器上面相同的权限(具有php权限)

  如果不对usera和userb进行特别设置,那么usera就可以使用php相关函数来读取userb的空间内容,反过来,userb也可以做同样的事情。

  如果用户数目只有几十个,那还可以一个个特别设置

  open_basedir为用户自己的目录,

  但是如果目前有几百个用户,请问该如何限制用户的php程序之能打开用户自己目录的文件??

  你可以通过在<virtualhost>内设置用户和组以及设置每个用户的主目录权限来试一个,方法是在每一个的virtualhost内添加user username group groupname,主目录如open_basedir/username设置为0700

  你可以通过在<virtualhost>内设置用户和组以及设置每个用户的主目录权限来试一个,方法是在每一个的virtualhost内添加 user username group groupname,主目录如open_basedir/username设置为0700

  是的我用过的。

  不过得使 apache 支持 suexec 。

  每个用户就可以设置权限为 700 运行了。

  但是这样子又出现了一个问题:

  因为是提供免费空间服务,所以可能100各用户都在通一台服务器上面。

  这不会要我建立一百个实际用户把,我的用户都是虚拟用户阿

  你可以通过在<virtualhost>内设置用户和组以及设置每个用户的主目录权限来试一个,方法是在每一个的virtualhost内添加 user username group groupname,主目录如open_basedir/username设置为0700

  这方法我也用过,相对安全性高点。但是,当里面用户多的时候容易出现资源不足。对于一些用户自行修改目录权项的仍会引起一些问题。

  这就是我这个月烦的事情罗

  :(

  随便补充一个,怎么能控制PHP写文件或上传文件不能超出虚拟主机的磁盘限制?(没办法用系统的QUOTA,因为都是虚拟用户)

  在hostqiao的问题中说道:

  [quote][/如果用户数目只有几十个,那还可以一个个特别设置 quote]

  linux的一个好处就配置的修改仅仅需要对文件进行修改,也就是说这些都可以通过程序来实现。

  用户的开通通过一个某一个具有特许权限的cgi或者php程序来实现(特许权限--是指这个程序可以完成开通,具体设计就要靠自己了,我是新手),这样子就和定制是一样的效果。。

  不知道是不是这样子?本文来自:http://www.xiaoyaxiao.com/2044.html
发表您的高见!
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,