【问题标题】:How to chroot Django如何chroot Django
【发布时间】:2010-03-25 00:42:32
【问题描述】:

可以在 chroot 中运行 Django 吗?值得注意的是,为了设置(例如)/var/www 作为 chroot'd 目录,然后让 Django 在该 chroot'd 目录中运行,需要什么?

谢谢 - 我很感激任何意见。

【问题讨论】:

    标签: python django security chroot jail


    【解决方案1】:

    mod_wsgi 首选用于 Python Web 应用程序部署的原因有很多。一个是稳定性,另一个是各种配置选项……其中之一是能够 chroot mod_wsgi 守护进程(从 3.00 版开始)。

    http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGIDaemonProcess 处的 WSGIDaemonProcess 指令尚未记录 chroot 选项,但 Changes in Version 3.0 中有足够的文档。

    您也可以在http://code.google.com/p/modwsgi/issues/detail?id=106阅读该功能的讨论

    【讨论】:

    • @Van Gale - 谢谢 - 方便的参考。我们使用的不是 Apache,而是 Lighttpd(也许有一天会是 Nginx)。是否有您知道的 Lighttpd 等效配置选项(我现在也在寻找)?
    • 呃,好吧,如果你使用的是 lighttpd,你可能也在使用 Flup(......现在你有 2 个问题...... bada boom......)fastcgi 这意味着你应该能够让你的 fastcgi startup/init.d 脚本按照 WoLpH 的建议执行 chroot(尽管它可能在 shell 脚本而不是 python 中)。
    【解决方案2】:

    您必须在该目录中添加一个 Python 解释器,并在其中添加 Django。

    在您设置好环境后,您必须创建一个执行类似os.chroot('/var/www/') 的包装脚本,然后您就完成了:)

    要为 Python 创建沙盒/chroot 环境,请尝试以下选项之一:http://wiki.python.org/moin/Asking%20for%20Help/How%20can%20I%20run%20an%20untrusted%20Python%20script%20safely%20%28i.e.%20Sandbox%29?highlight=%28chroot%29 自从 Google 开始将 PyPy 选项与 App-Engine 一起使用以来,PyPy 选项似乎越来越受欢迎。

    【讨论】:

    • @WoLpH:感谢您提供的信息 - 不过该链接已损坏。
    • @Brian M. Hunt:链接再次修复,stackoverflow 不喜欢链接中的 ) ;)
    • 太好了 - 谢谢! PyPy 选项真的非常很有趣 - 谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-20
    相关资源
    最近更新 更多