Prefiero montar la partición con -o acl. Esto le permite usar el comando setfacl para otorgar permisos definidos en archivos y carpetas, en lugar de solo especificar permisos de grupo de usuarios y otros.
Por lo tanto, coloque acl en su línea de partición en / etc / fstab, o vuelva a montar con mount -o remount, acl / mnt / xy, y luego otorgue la propiedad de su directorio web a nadie: nadie. Chmod a 770, y use setfacl para otorgar permisos de escritura solo en las carpetas que lo necesitan, por ejemplo. otorgue permisos de escritura a www-data (o al usuario con el que se ejecuta su servidor web) para la carpeta de carga, y otorgue permisos de escritura a su propio usuario para todo el directorio.
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
Ahora nadie puede leer sus archivos, aparte de su servidor web y su propio usuario. Puede escribir en todos los archivos de la carpeta, y el servidor web solo puede escribir en la carpeta de carga.