Я пытаюсь установить права доступа к папке на Linux-машине. У меня есть эта основная папка: / home / master / staging
В этой папке находятся подпапки, содержащие точки ввода sftp пользователя. Для этого мне нужно установить права доступа к папке.
У меня есть следующие пользователи:
МАСТЕР sftpuser1 sftpuser2
Домашний каталог мастера - / home / MASTER
В папке / home / master / staging / я сделал следующее:
drwxrwx---. 19 MASTER MASTER 4096 Apr 14 02:21 .
drwxrwx---. 6 MASTER MASTER 199 Mar 5 12:20 ..
drwxrwx---. 2 MASTER MASTER 10 Apr 15 00:51 MASTER
drwxrwxr-x. 2 sftpuser1 MASTER 10 Apr 15 00:28 sftpuser1
drwxrwxr-x. 2 sftpuser2 MASTER 10 Feb 15 08:02 sftpuser2
Предполагая, что MASTER является владельцем группы MASTER, я прочитал об этом следующее:
MASTER "should" be able to read/write all folders
sftpuser1 should be able to read/write in folder /staging/sftpuser1
sftpuser2 should be able to read/write in folder /staging/sftpuser2
sftpuser1 и 2 были установлены следующим образом:
usermod sftpuser1 -s /bin/false
usermod sftpuser1 -d /home/master/staging/sftpuser1
usermod sftpuser2 -s /bin/false
usermod sftpuser2 -d /home/master/staging/sftpuser2
С учетом всего сказанного, ни один из sftpusers не может видеть свою собственную папку с помощью sftp, а пользователь MASTER не может войти в две папки sftpuser локально. все разрешения запрещены.
что мне здесь не хватает? Цель - sftpuser1 видит только sftpuser1; sftpuser2 видит только sftpuser2; и МАСТЕР должен видеть их все. Спасибо!
МАСТЕР теперь может видеть папки sftpuser. Групповые привилегии исправили это.
Не существует такой вещи, как "владелец группы группы" (как и "папки" в * nix, давайте назовем это как предполагается - каталог). Есть владелец, который является пользователем, а есть группа и другие в традиционных разрешениях * nix.
Поскольку вы уже установили доступ от пользователя MASTER, вам необходимо разрешить доступ sftpuserX. Но ваш родительский каталог / home / master разрешает доступ к нему только пользователю MASTER и группе MASTER. Вот почему ваш sftpuserX не может получить доступ к каталогу / home / master / sftpuserX.
Если вы не запускаете sftp в среде chroot, это не лучшая идея для такой настройки. Потому что, если вы разрешите sftpuserX читать каталог / home / master, они фактически получат доступ ко всем файлам в MASTER user homedir.
Я бы предложил вам создать отдельные каталоги для этих пользователей, например / home / master / sftpuserX, изменить его группу на MASTER и разрешить g + rwx (полный групповой доступ) к этому каталогу (сохраняя sftpuserX в качестве владельца и полный доступ). Вы можете добавить символические ссылки из каталогов / home / master / в / home / sftpuserX, если вам действительно нужно получить к ним доступ оттуда.
В качестве альтернативы взгляните на расширенные разрешения с ACL (проверьте команды getfacl и setfacl). Они обеспечивают большую гибкость с разрешениями, но могут стать более сложными в управлении.