2016-01-18 36 views
0

我必须在我的Ubuntu服务器上运行其他人的编译代码,我担心源代码可能有害(系统权限,删除文件等等)。是否有可能限制他们被允许从终端上做的事情?有没有办法以有限的权限运行C++和Java文件?

+2

这不是这些可执行文件构建的语言的问题,而是它们从哪个帐户运行的。 –

+0

提供各种沙盒选项,但这些选项需要专业知识才能实现您的安全目标。对于SO来说,这个问题确实太广泛了,至多只有外设编程相关。 –

+0

这个问题可能是在http://askubuntu.com/或http://superuser.com/的主题上搜索他们的现有答案。 – user2079303

回答

-1

限制他们的权限;如果你以root身份运行Java程序,那么它将具有root权限。如果您运行程序并且没有权限,程序将没有权限。

+0

您不需要以root身份来查找目录中的所有文件来清除它们。 – kanslulz

+0

而不是_don't给予用户这样做的权限._ – ostrichofevil

+1

这是我首先要求的。如何做到这一点 – kanslulz

1

您可以在SecurityManager下运行Java程序,该程序可以允许或阻止不同种类的操作,而不管程序运行的是哪个用户。

0

你需要的是什么沙盒,你的问题稍微宽泛,反正:

您可以使用chroot到系统的视图限制到文件系统的限制部分。这是轻沙箱。 chroot命令在许多Unix上都可用。

在OSX上,您有一个sandbox-exec命令可用于更精确地定义过程的权限。

在Linux上,您有一个称为AppArmor的等价物,它也为您的过程使用特权规范。

相关问题