Настройка SFTP пользователя на Ubuntu Linux для конкретной папки.

Добавим группу пользователя
groupadd testgroup

В конфигурации ssh

nano /etc/ssh/sshd_config

Закоментить и добавить строку

#Subsystem   sftp   /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp

В низ конфига вставить

Match Group testgroup
ChrootDirectory /home/testgroup/
X11Forwarding no
AllowTcpForwarding no

Перезагружаем sshd

systemctl reload sshd

Создаем пользователя

useradd -d /home/testgroup/ -s /sbin/nologin sftp_user

Задаем пароль для пользователя sftp_user

passwd sftp_user

Добавляем в группу

usermod -aG testgroup sftp_user

Создаем каталог

mkdir /home/testgroup

Задаем владельца права

chown root:sftp_user /home/testgroup/
chmod 750 /home/testgroup/

Создаем директорию в которую будим монтировать папку

mkdir /home/testgroup/site

Задаем владельца права

chown sftp_user /home/testgroup/site
chmod 750 /home/testgroup/site.

и монтируем папку
mount —bind /var/www/site /home/testgroup/site

Добавим запись в /etc/fstab для монтирования после ребута сервера

nano /etc/fstab

/var/www/site /home/testgroup/site none bind 0 0