У меня есть необходимость разрешить доступ к каталогу конкретному пользователю в моей файловой системе. Я хочу, чтобы этот пользователь не мог получить доступ к любому другому каталогу в моей файловой системе (изначально, во всяком случае. Ему может потребоваться доступ к некоторым каталогам позже).
Например: у меня есть каталог с именем / opt / mydir. - Я хочу, чтобы мой выделенный пользователь имел доступ только к этому каталогу и ничего больше. - Я хочу, чтобы все остальные пользователи имели доступ к этому каталогу в обычном режиме.
Я новичок в Linux и его разрешения. Я прочитал довольно много справочных материалов, но я немного запутался. Есть ли возможность отменить разрешения для / opt / mydir для отдельного выделенного пользователя?
Возможный ошибочный метод - разрешить доступ только к / opt / mydir и исключить любого другого пользователя. Это не будет работать, потому что я хочу, чтобы все остальные пользователи работали как обычно; доступ к каталогу.
Я работаю над Solaris 10.
Любые предложения приветствуются.
@Chris: chroot, кажется, решение моей проблемы.
В настоящее время я работаю над Solaris 10. Синтаксис chroot для этой ОС: / usr / sbin / chroot newroot команда
Вы знаете, какой будет «команда» в моей ситуации? Документация очень расплывчатая.
Я думаю, что должно произойти, это я:
- Создать фальшивый рут для моего приложения скажем / opt / myapproot.
- Затем я делаю 'chroot / opt / myapproot', чтобы / opt / myapproot выглядел как '/'.
- Затем я могу запустить свое приложение в этой «тюрьме», ограничив его любым каталогом выше / opt / myapproot.
Это звучит правильно?
источник
Ответы:
Re:
Чтобы по- настоящему ограничить пользователя, чтобы он не обращался к чему-либо еще в вашей файловой системе, необходимо рассмотреть одну из техник - chroot jail , которая ограничивает доступ пользователя только к файлам, содержащимся в папке chroot'd.
Однако вам также необходимо скопировать некоторые важные системные файлы в папку jail, чтобы пользователь мог выполнять любые ограниченные команды, которые вы разрешите (после некоторого более вдумчивого рассмотрения), потому что пользователь в изолированной тюрьме будет даже не прочитал доступ к местам , в файловой системе вы могли бы принимать как само собой разумеющееся, такие как
/bin
,/etc
,/usr
и так далее.Или, может быть, вы на самом деле не хотели сказать «... невозможно получить доступ к любому другому каталогу ...» . :-)
Дополнительные ресурсы:
источник