Hola, espero poder ayudarte. Yo hice eso que quieres hacer y lo hice de este modo:
Editamos el archivo /etc/ssh/sshd_config, donde reemplazamos la línea
Code: Select all
#Subsystem sftp /usr/libexec/openssh/sftp-server
Por:
Es decir, la modificamos y descomentamos. Luego al final del mismo archivo escribimos esto y fijate bien donde esta montado el usb para añadirlo aqui, pues aqui especificamos cual es el /home de sftp digamos. Yo lo he puesto directamente en /sftp pero tienes que ajustarlo a tu directorio:
Code: Select all
Match Group sftpusers
ChrootDirectory /sftp/%u
ForceCommand internal-sftp
Salvas y guardas el archivo.
Luego creas el directorio que sera el chroot de los usuarios del sftp, lo creas en el pendrive o donde quieras, pero que coincida con lo que has puesto en ChrootDirectory:
Para añadir usuarios solamente crea sus directorios asi:
Code: Select all
sudo mkdir /sftp/elfresno
sudo mkdir /sftp/trasgu
Una vez tienes todo eso configuramos los usuarios, primero creamos el grupo al que perteneceran los usuarios:
Y luego añadimos usuarios al grupo, cuidado porque ahora queda enjaulado y no podra salir del directorio y no podra ejecutar todos los comandos del sistema:
Code: Select all
sudo usermod -g sftpusers -d /elfresno -s /sbin/nologin elfresno
O directamente los creamos si no existen, esto es mejor que lo anterior para probar:
Code: Select all
sudo useradd -g sftpusers -d /invitado -s /sbin/nologin invitado
Y para terminar damos propietario a cada directorio:
Code: Select all
sudo chown elfresno:sftpusers /sftp/elfresno
Reinicia sshd y prueba con el cliente sftp.