Eu vejo duas soluções (semelhantes) para o seu problema:
-
SSH Chroot jail
Quando o usuário faz login com o ssh, ele irá chroot automaticamente no diretório que você configurou e não poderá sair dele (cadeia)
-
SFTP
Eu usei mysecureshell em várias ocasiões quando necessário para fornecer acesso ao diretório webroot. O MySecureShell é basicamente um wrapper em torno do chroot, então mais ou menos ele fará o mesmo.