альтернатива chroot

Я работаю над webapp (работает на сервере Ubuntu), который позволит пользователю запускать код Octave (в основном Matlab). Тем не менее, я хочу, чтобы они могли читать или изменять папки в назначенной домашней папке.

Я знаю, что chroot – это один из способов сделать это, но он небезопасен, и вам нужны привилегии root для chroot (что в идеале приложение не понадобится).

Кроме того, я мог прочитать код пользователя перед запуском и выбросить ошибку, если они попытаются записать файл, но для этого мне нужно будет думать о КАЖДОМ способе, которым пользователь может нарушать мои правила, чтобы предотвратить его.

Я посмотрел на Linux-VServer, но для каждого пользователя потребуется отдельный виртуальный сервер (если только я не ошибаюсь).

edit: Я мог бы установить соединение SSH и заключить в тюрьму соединение, но это кажется излишне ресурсоемким.

Есть ли способ, которым я могу заключить в тюрьму пользователя или процесс в определенную папку без использования chroot ?

    Проверьте lxc.

    http://lxc.sourceforge.net/

    LXC … «LXC – это пакет управления пользовательским пространством для контейнеров Linux». Это похоже на виртуализацию групп.

    Вы можете использовать Coffer, который является довольно симпатичной оболочкой вокруг chroot. Он делает много тяжелой работы для вас.

    https://github.com/Max00355/Coffer