По умолчанию ваш веб-сервис работает как непривилегированный пользователь, например, www-data.Ваш веб-сервис может создавать файлы только в тех каталогах, к которым у него есть доступ для записи.
По соображениям безопасности плохая идея предоставлять веб-сервису любой вид доступа для записи в полные пользовательские каталоги.Вы можете сделать что-то вроде:
- Создать отдельную папку для загрузки для каждого пользователя
/home/[username]/webuploads
- дать разрешения на запись www-данных в эту папку
chmod a+rw /home/[username]/webuploads
- или
setfacl -m u:www-data:rwx /home/[username]/webuploads
, если ваша файловая система поддерживает списки ACL
Это дает вашему веб-сервису возможность записывать в домашние каталоги других пользователей, но также не позволяетсервис для перезаписи всего в каталогах пользователей.