O OpenSSH (que também fornece a funcionalidade sftp e scp) ganhou funcionalidade chroot em suas versões posteriores. Basicamente, você só precisa adicionar linhas semelhantes a estas ao arquivo /etc/ssh/sshd_config
.
Subsystem sftp internal-sftp
Match group sftpusers
ChrootDirectory /var/www/xy/backup/files/
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
Em seguida, crie um novo grupo chamado sftpusers com o comando groupadd sftpusers
.
O último passo é criar um usuário pertencente ao grupo sftpusers :
useradd -g sftpusers -d /var/www/xy/backup/files yourusername
passwd yourusername
Em seguida, basta reiniciar o serviço ssh: /etc/init.d/sshd restart
e você deve estar pronto.