Надати доступ лише до читання певним папкам?


12

Я хотів би надати користувачеві доступ лише для читання, але я хочу, щоб він / вона бачила лише ті папки, яким я надаю доступ. наприклад, він / вона не повинен подорожувати по всьому серверу та переглядати всі папки користувачів тощо. Отже, по-перше, як я можу дозволити конкретному користувачеві мати доступ до певної папки, а потім допоможе введення символічних посилань на його домашню папку? Тож вони можуть переходити безпосередньо до необхідних папок, але не вгору чи вниз?



@Creek Ні, це відповідне тло, але воно не пояснює, як це налаштувати.
Жил 'ТАК - перестань бути злим'

@Gilles Ви маєте рацію, це виглядає більш релевантним середовищем Chroot для SSH, використовуючи Debian
Creek

Відповіді:


10

Вам слід встановити необхідні дозволи для каталогу. Для каталогів вони:

  • read : дозволено переглядати файли та підкаталоги в цьому каталозі
  • write : дозволено створювати файли та підкаталоги в цьому каталозі
  • Execute : дозволено вводити в каталог.

У файлах ситуація схожа, вона цілком очевидна, тому ви можете впоратися самостійно.

Цифрові ці дозволи:

  • читати - 4
  • написати - 2
  • виконати - 1

Для редагування дозволів використовуйте chmod. Використання:chmod xyz <file or directory>

  • x - сума дозволів власника
  • y - сума дозволів групи власників
  • z - сума дозволів на відпочинок користувачів / груп

Приклад:

$ chmod -R 664 /home/jack/

jack and jack's group матиме доступ для читання + запису до / home / jack та всіх підкаталогів. Решта матиме лише доступ для читання. -Rтут використовується опція для рекурсивного встановлення дозволів.

Інший приклад:

$ chmod 700 /home/jack/video/

надасть Джеку повний доступ до /home/jack/videoкаталогу. Дивіться також: chown, chgrpдля зміни власника і групи власника.


1
Хоча це незначно релевантний фон, питання не в деталях дозволів каталогів, а в створенні обмеженого середовища.
Жил 'ТАК - перестань бути злим'

1
Тут я не потребую chroot, я припускаю, що проблему можна легко вирішити, встановивши необхідні дозволи.
мило

3

Я також не читаю необхідних для налаштування хротів. щоб запобігти переходженню до батьківських каталогів, призначте суворий дозвіл.

$ mkdir --parent 1/2/3
$ ls 1
2
$ chmod 100 1
$ ls 1
ls: cannot open directory 1: Permission denied
$ ls 1/2
3

якщо ми хочемо надати користувачеві доступ до / home / 1, але обмежимо користувача не бачити, які ще матеріали в / home, які ми робимо / home, що належать root, мають дозвіл 111. таким чином користувач ніколи не знає, чи / home / 2 коли-небудь існують.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.