El primer paso será instalar vsftpd:
apt install vsftpd
Y ahora iniciamos el servicio:
systemctl start vsftpd
systemctl enable vsftpd
systemctl status vsftpd
Una vez hecho esto, probamos la configuración accediendo desde otro PC con las credenciales que usamos para loguearnos con el usuario mario o el que corresponda:
Pero tenemos el problema de que este usuario puede navegar por los directorios, y lo que debemos hacer es que este usuario solo pueda estar en su directorio /home:
Por lo que editamos el fichero de configuración de vsftpd, el cual si le quitamos los comentarios viene así por defecto:
Por lo que añadimos estas 2 líneas. La primera es para establecer un directorio donde cada usuario tendrá su configuración: y la otra es para hacer que cada usuario se encuentre enjaulado en su directorio:
chroot_local_user=YES allow_writeable_chroot=YES write_enable=YES
Y reiniciamos el servicio:
systemctl restart vsftpd
Y vemos que se configuró correctamente:
Y ahora si entramos como mario vemos que este usuario se encuentra enjaulado en su directorio:
Lo mismo podemos hacer con cualquier otro usuario, por lo que creamos otro usuario y vemos que funcionará igual:
adduser pepe
Y lo mismo pasará si entramos como este usuario vía FTP, que también estará enjaulado: