Я предпочитаю монтировать раздел с помощью -o acl. Это позволяет вам использовать команду setfacl, чтобы задавать детализированные разрешения для файлов и папок, вместо того, чтобы указывать только разрешения для группы пользователей.
Поэтому поместите acl в строку вашего раздела в / etc / fstab или перемонтируйте с помощью mount -o remount, acl / mnt / xy, а затем передайте право собственности на ваш веб-каталог никому: никому. Перейдите к 770 и используйте setfacl для предоставления прав записи только в те папки, которые в этом нуждаются, например. предоставьте www-данным (или пользователю, от имени которого работает ваш веб-сервер) разрешения на запись для папки загрузки и дайте разрешения на запись вашему собственному пользователю для всего каталога.
mkdir dir
chown nobody:nobody dir
setfacl -m u:www-data:r-x,d:u:www-data:r-x dir
setfacl -m u:www-data:rwx,d:u:www-data:rwx dir/upload
setfacl -m u:youruser:rwx,d:u:youruser:rwx dir
Теперь никто не может читать ваши файлы, кроме вашего веб-сервера и вашего собственного пользователя. Вы можете записывать в каждый файл в папке, а веб-сервер может записывать только в папку загрузки.