2

Я довольно новичок в Linux, но мне удалось создать собственный DIY NAS (Odroid CS2, Ubuntu 18.04), настроить Samba, SSH и т.д., И сейчас я нахожусь на этапе управления доступом и папками.

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

Ситуация:
Я сам отвечаю за технику в моей семье, все остальные члены семьи довольно небрежны, когда речь заходит о безопасности, но они также не последуют моим советам по улучшению (однако, они будут просить помощи в случае каких-либо проблем). ).

Поэтому я не возражаю против того, что они делают на своих компьютерах с Windows, однако я хотел бы помочь им безопасно хранить и делиться своими файлами на нашем NAS.

В настоящее время на NAS имеется одна основная папка:

/secure/usr/ с парой подпапок: /01_monika /02_rebecca /03_hans /04_alfred /05_share

У каждого пользователя есть пользователь linux и пользователь samba с одинаковым именем (например, monika, rebecca, hans, alfred), и есть одна группа (например, samba_users).

Эта проблема:
Я хочу, чтобы все пользователи хранили свои файлы в своих собственных каталогах, но только некоторые подпапки (такие как /photos) должны быть доступны (разрешение на чтение) другим пользователям. Все остальные папки / файлы в идеале должны быть скрыты для других членов семьи или, по крайней мере, недоступны.

Пример: поскольку компьютеры членов семьи могут быть скомпрометированы вирусами и троянами, никто не должен иметь возможность читать личные файлы других пользователей по умолчанию, например, /02_rebecca/documents недоступен для пользователей hans. Тем не менее, /02_rebecca/photos/ должен иметь доступ для чтения, потому что членам семьи часто нужно делиться своими фотографиями, и в идеале я не хочу, чтобы они хранили все свои общие файлы отдельно в /05_share .

Спасибо за любые предложения!

Дополнительные мысли:

  • Работают ли символические ссылки, чтобы получить прошлые разрешения родительского каталога, например, чтобы позволить samba_users доступ к подпапке /photos/ когда разрешения для родительского каталога /hans/photos/ не разрешают доступ для чтения? Я читал, что символические ссылки не работают в Windows, но Microsoft говорит иначе.

  • Я знаю, что могу создать подпапки (например) /01_monika/private/ и /01_monika/shared/ для каждого пользователя. Но я бы хотел избежать этого, так как некоторые члены моей семьи запутались и все поместили в /shared

1 ответ1

0

Я нашел способ, как объяснил здесь пользователь @Gilles:

Наличие разрешения на чтение или запись в каталоге без разрешения на выполнение не полезно. Наличие разрешения на выполнение, но не на чтение иногда полезно: оно позволяет получить доступ к файлам, только если вы знаете их точное имя, что-то вроде примитивной защиты паролем.

Это означает, что нужно установить бит выполнения, но запретить чтение в пользовательских каталогах (rwx--x---). Затем на вложенные папки /photos/ позволяют чтение и выполнение для группы family rwxr-x---

Это означает, что обычно пользовательские каталоги не могут быть открыты напрямую всеми членами семьи, но, зная, что есть подпапка /01_monika/photos/ , пользователь может напрямую открыть эту конкретную папку. Тогда мне нужно только создать ярлыки для этих подпапок на рабочем столе людей или в главной папке где-нибудь на NAS.

Я знал, что это будет возможно, это именно то, что мне нужно!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .