Я бы хотел, чтобы группа студентов имела доступ к общему веб-серверу. Студенты работают в группах, и домашний каталог каждой группы содержит папку www
которая должна быть доступна общедоступному экземпляру apache2. Например, если Боб и Джон являются частью группы MyPetShop, у вас будет пользователь john
в группах john students mypetshop
. Я не хочу предоставлять членство в www-data
студентам, чтобы они не испортили чужие страницы напрямую *.
И их домашний каталог будет находиться в /home/students/mypetshop
, а /home/students/mypetshop/www
будет читаться / писать для пользователя www-data
. Я могу добиться этого либо с помощью
- липкая группа
www-data
для этих папок (так что их разрешения будутdrwxrwsrwx john www-data
). Это проблема того, что Джон использовал неправильные разрешения для своих файлов, так что bob или www-data не могут получить к ним доступ; или www-данные, создающие файлы, к которым Джон и Боб могут прикоснуться только после того, как они на некоторое время возятся с разрешениями. - стандартное владение группой (
mypetshop
) и ACL, который разрешает доступ к данным папкамwww-data
(черезsetfacl -m d:g:www-data:rwx www
).
Будут ли ACL работать здесь как задумано? Являются ли списки ACL по умолчанию автоматически наследуемыми в подпапках, или есть какой-то гораздо более простой способ установить это, чего мне не хватает?
(*) да, это не надежно, так как они могли бы написать phps, выполненный с www-данными, чтобы сделать это для них ...