我希望用户指定一个命令列表,用于收集他/她感兴趣的系统统计信息。我会在各种情况下自动运行这些命令。但是我不太清楚如何安全地对命令进行沙盒处理。
一个选项是携带允许命令的白名单,但需要维护。我希望非常灵活,例如,是否可以在 Linux 中以只读文件权限运行任意命令?
你有什么想法?
答案1
Gentoo 下有一个sandbox
工具,允许在沙盒中运行程序,但只能从外部读取。我在 Ubuntu 下也成功构建了它。源代码可以下载这里。
答案2
SELinux 允许您这样做。您可以将可执行文件放入受限域,也可以创建具有有限权限的新角色。