繁体   English   中英

Linux中的安全Python环境

[英]Safe Python Environment in Linux

是否有可能创建一个在Linux下安全运行任意Python脚本的环境? 这些脚本应该是从不受信任的人那里接收的,并且可能太大而无法手动检查它们。

一个非常强力的解决方案是创建虚拟机并在每次启动不受信任的脚本后恢复其初始状态。 (太贵了。)

我想知道是否可以限制Python访问文件系统并与其他程序交互等等。

考虑使用chroot监狱。 这不仅非常安全,受到良好支持和测试,而且还适用于从python运行的外部应用程序。

您可以尝试以下四种方法:

  • 正如您已经提到的,使用虚拟机或其他形式的虚拟化(也许solaris区域足够轻便?)。 如果脚本打破了操作系统那么你就不在乎了。
  • 使用chroot将shell会话放入虚拟根目录,与主OS根目录分开。
  • 使用systrace。 可以将其视为系统调用的防火墙。
  • 使用基于systrace构建的“jail”,为每个jail提供自己的进程表等。

Systrace最近受到了损害,所以要注意这一点。

您可以运行jython并使用JVM中的沙盒机制。 JVM中的沙箱非常强大,非常好理解,并且或多或少地记录在案。 需要一些时间来准确定义您想要允许的内容以及您想要允许的内容,但是您应该能够从中获得非常强大的安全性......

另一方面,jython与cPython不是100%兼容...

难道你不能只是作为一个除了该目录中的脚本之外的任何东西都无法访问的用户运行吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM