Для новых серверов предпочтительнее 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

Официальная документация