V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
jybox
V2EX  ›  程序员

Apache如何做权限控制,考虑了一下itk、安全模式、SuExec

  •  
  •   jybox ·
    jysperm · 2012-08-03 04:18:48 +08:00 · 3581 次点击
    这是一个创建于 4514 天前的主题,其中的信息可能已经有所发展或是发生改变。
    其实我就是想卖虚拟主机了,下面考虑了几个方案


    itk工作模块: http://mpm-itk.sesse.net/
    它的功能是让apache以不同的用户权限运行网站

    但是这家伙确实很大程度上拖慢了速度,下面有一份资料表明它比Apache的prefork工作模块慢了五倍
    http://blog.stuartherbert.com/php/2008/04/19/using-mpm-itk-to-secure-a-

    ----------

    还有一个解决办法是用PHP的安全模式,它会按照所运行PHP脚本的UID来限制文件读写权限。
    但是这并不是一个完美的解决方案,PHP也打算在将来版本中取消这个功能
    比如,这样将导致PHP脚本无法读取一些系统文件,例如/proc/uptime之类的


    还有就是很难统计和控制内存/CPU等资源的使用量,使用SuEXec和itk都可以通过直接限制用户的进程,来限制资源

    另外,如果以wsgi模式运行python网站的话,那么还是要解决权限。

    ----------

    还有个解决方案是SuExec,它可以让CGI以指定的用户权限运行,但是一旦这样,就必须使用CGI模式的PHP和Python。也会拖慢速度,目前还不清楚它和itk谁快。

    -----------

    我感觉上面的解决方案都不是很理想,求建议
    另外谁知道常见的那些虚拟主机控制面板都采用怎样的方式
    1 条回复    1970-01-01 08:00:00 +08:00
    zxp
        1
    zxp  
       2012-08-03 18:21:43 +08:00
    php-fpm 可以每个网站使用自己的应用池,chroot + 指定uid,可以很好的控制权限,可以按照应用池的数量收费。安全性要求不高的用户 可以共享一个应用池。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2399 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 15:32 · PVG 23:32 · LAX 07:32 · JFK 10:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.