是否可以创建一个在Linux下安全运行任意Python脚本的环境?这些脚本应该是从不受信任的人那里收到的,可能太大而无法手动检查。
非常强力的解决方案是创建虚拟机并在每次启动不受信任的脚本后恢复其初始状态。 (太贵了。)
我想知道是否可以限制Python访问文件系统并与其他程序交互等等。
答案 0 :(得分:4)
考虑使用chroot监狱。这不仅非常安全,受到良好支持和测试,而且还适用于您从python运行的外部应用程序。
答案 1 :(得分:4)
您可以尝试以下四种方法:
Systrace最近受到了损害,所以请注意这一点。
答案 2 :(得分:2)
您可以运行jython并使用JVM中的沙盒机制。 JVM中的沙箱非常强大,非常好理解,并且或多或少地记录在案。需要一些时间来准确定义您想要允许的内容以及您想要允许的内容,但是您应该能够从中获得非常强大的安全性......
另一方面,jython与cPython不是100%兼容......
答案 3 :(得分:1)
尝试搜索“sandboxing python”,例如:
答案 4 :(得分:1)
你能不能只是作为一个除了该目录中的脚本之外的任何东西都没有访问权限的用户运行?