Назад | Перейти на главную страницу

Настройка учетной записи для загрузки в подкаталог веб-сайта

Мне нужно настроить учетную запись stfp в Ubuntu 18.04, которая соответствует следующему требованию:

Я провел небольшое исследование и обнаружил, что мне нужен Chroot.

Итак, я попробовал это:

adduser --home /var/www/mysite/uploadfolder --no-create-home myusers
usermod -aG www-data myusers
chmod 2770 /var/www/mysite/uploadfolder/
chmod -R g+w /var/www/mysite/uploadfolder/
setfacl -m g:www-data:rwx /var/www/mysite/uploadfolder/

Затем я добавил это в sshd_config:

Match User mvpdocs
  ChrootDirectory /var/www/mysite/uploadfolder/
  ForceCommand internal-sftp
  X11Forwarding no
  AllowTcpForwarding no

Но это не работает. Я провел небольшое исследование, и OpenSSH не допускает этого, потому что папка Chroot должна принадлежать пользователю root и не быть доступной для записи для группы. Если я переключу путь к корневой папке в каталоге / home, он будет работать нормально, но мне нужно, чтобы пользователь загрузил в подкаталог.

Как мне обойти эту проблему? Могу ли я создать символическую ссылку на каталог и объявить этот каталог как часть Chroot? Я видел, что это возможно, но без примеров.

Какой для меня самый простой способ добиться простой загрузки учетной записи sftp в подкаталог веб-сайта?

РЕДАКТИРОВАТЬ:

я использовал mount --bind /var/www/mysite/uploadfolder/ /home/user/docs/ и это сработало, но все загруженные файлы принадлежат пользователю и имеют группу пользователей.

Как я могу сделать их групповыми www-данными, чтобы ими можно было управлять с помощью веб-сервера и php?