【发布时间】:2014-10-25 06:41:45
【问题描述】:
我目前正在编写一个 Web 应用程序,我必须在其中运行来自用户的不受信任的代码。我想确保这段代码不能执行任何网络或磁盘 io,除了使用标准输入和标准输出。
我希望使用 Openshift 作为我的平台来部署我的应用程序。根据我的阅读,它没有给我 root 访问权限,因为它不是一个完整的操作系统虚拟化。
有没有办法使用我在 Openshift 设备上拥有的权限对进程进行沙箱处理,限制其磁盘和网络访问?
【问题讨论】:
-
你考虑过内核命名空间吗?
-
我不熟悉这个。有链接吗?
-
当然。这篇由 7 部分组成的文章非常棒:lwn.net/Articles/531114。根据您的问题,您可能对挂载和网络命名空间最感兴趣。
-
我们实际上已经使用命名空间、cgroup 和 selinux 来限制您的应用程序的访问。应用程序开发人员无法控制其设置。
标签: linux security openshift sandbox paas