Для новых серверов предпочтительнее SFTP через OpenSSH: он шифрует и данные, и учётные данные, не требует отдельного FTP daemon и диапазона passive-портов.
Важно: Корень chroot обязан принадлежать root и не быть доступным для записи пользователю; запись выдавайте только подкаталогу.
1. Установите OpenSSH server
sudo apt update
sudo apt full-upgrade -y
sudo apt install -y openssh-server
2. Создайте SFTP-группу и пользователя
sudo groupadd --force sftpusers
sudo useradd -m -G sftpusers -s /usr/sbin/nologin uploaduser
sudo passwd uploaduser
3. Подготовьте chroot
sudo chown root:root /home/uploaduser
sudo chmod 0755 /home/uploaduser
sudo mkdir /home/uploaduser/uploads
sudo chown uploaduser:sftpusers /home/uploaduser/uploads
4. Добавьте Match-блок
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
5. Проверьте и примените
sudo sshd -t
sudo systemctl reload ssh
sftp uploaduser@SERVER_IP