Я нашел решение в bindfs. Это позволяет копировать загруженные папки в мою целевую папку с правильными разрешениями.
Я следил за этим руководствомhttps://www.talkerland.com/2018/08/20/howard/how-to-install-bindfs-on-ubuntu-18-04/
root@talkerland $ apt update
root@talkerland $ apt -y install bindfs
root@talkerland $ mkdir -p /home/gatekeeper/www/html
root@talkerland $ chown -Rf gatekeeper:gatekeeper /home/gatekeeper/www
root@talkerland $ chmod -Rf 770 /home/gatekeeper/www
root@talkerland $ nano /etc/fstab
Затем в одной строке /etc/fstab
bindfs#/var/www/html /home/gatekeeper/www/html fuse force-user=gatekeeper,force-group=gatekeeper,create-for-user=www-data,create-for-group=www-data,create-with-perms=god=rx:ud=rwx:gof=r:uf=rw,chgrp-ignore,chown-ignore,chmod-ignore 0 0
, чтобы запустить и запустить bindfs, я просто внес несколько изменений в записи fstab, чтобы получить нужные мне разрешения, которые также доступны для групповой записи, изменив god
на od
и ud
на gud
. Здесь o
означает other
, g
означает group
, а u
означает user
и f
означает file
и d
означает directory
.
bindfs#/var/www/html /sftp/sftpuser/app fuse force-user=sftpuser,force-group=sftpuser,create-for-user=www-data,create-for-group=www-data,create-with-perms=od=rx:gud=rwx:of=r:ugf=rw,chgrp-ignore,chown-ignore,chmod-ignore 0 0
Таким образом, теперь у меня есть довольно точно настроенный метод загрузки этих удаленных файлов с соответствующими разрешениями. Единственный позор заключается в том, что теперь у меня есть дублированный контент, но это недостаток, с которым я согласен для надлежащего контроля разрешений.