我需要一个绝对最小的 chroot 环境,其中只有几个命令来处理文件和目录。没有用户管理之类的。因为我想为每个用户创建这样的环境,所以它必须非常非常小。
是否有任何预建环境符合我的需要并且大小为 5-10 MB(或尽可能小)?
或者是否有其他方法可以将用户限制在某个目录中并且只能执行几个命令?
感谢您的帮助!
答案1
这个脚本可能会有用。
http://www.fuschlberger.net/programs/ssh-scp-sftp-chroot-jail/
看起来刚好足以上传、下载、rsync 文件等。
我认为您必须实施配额以防止它们使用过多的磁盘空间。
答案2
FreeBSD 监狱。
在 Linux 中,有 OpenVZ 和虚拟机管理程序(Xen、KVM)——它们用于提供 VPS 托管解决方案。然而后者并不适合 5-10 MB。
如果你只想进行文件操作(不运行外部进程),那么编写自己的 shell 并通过正则表达式过滤命令参数可能是一个好主意。我认为,这将少于 200 行 Google Golang 代码。