¿Existe una forma sencilla de restringir un usuario de SCP/SFTP a un directorio? Todos los métodos con los que me he encontrado requieren que configure un chroot jail copiando archivos binarios, pero no creo que sea necesario.
Respuesta aceptada:
SSH Admite el chrooting de un usuario SFTP de forma nativa. Solo necesita suministrar
DirectorioChroot
En su archivo de configuración sshd y reinicie sshd.
Si solo está haciendo sftp, entonces no tiene que hacer nada más. Desafortunadamente, esto no funciona para scp. Para el shell interactivo, deberá copiar binarios y nodos /dev en el chroot.
Una configuración de ejemplo, para un solo usuario, testuser:
Match User testuser
ChrootDirectory /home/testuser
ForceCommand internal-sftp
Algunas cosas a tener en cuenta, desde la página de manual de sshd_config:
All components of the pathname must be root-owned directories that are not writable by any other user or group. After the chroot, sshd(8) changes the working directory to the user's home directory.
Busque ChrootDirectory en man sshd_config para obtener más información.