Copie o binário sftp-server
e todas as suas dependências ( ldd /usr/lib/openssh/sftp-server
) para o chroot e você poderá executá-lo.
Eu tento restringir o acesso ao SFTP somente com uma conta de usuário. Depois do Login, alguns comandos devem ser executados. Por isso, inseri forcecommmand no meu sshd_config:
Match group stream
#ChrootDirectory /home/%u
X11Forwarding no
AllowTcpForwarding no
ForceCommand sudo /etc/mountsftp.sh
#ForceCommand internal-sftp
Isso funciona bem e meu script de comando:
#!/bin/bash
now=$(date +"%T,%D")
echo "Login : $now" >> /login.log
sshfs usrl@server:/usbshare1-2 /media/pp -o reconnect -o allow_other -o workaround=all
mount --bind /media/pp/Serien /home/stream/Serien
J=$HOME
#
#exit by calling a shell to open for the ssh session
#internal-sftp
#cp -v /usr/lib/openssh/sftp-server $J/bin/
chroot $J /usr/lib/openssh/sftp-server
é executado. Mas após a CHROOT não é possível iniciar o sftp-server, pois não é encontrado após o chroot. Mas eu preciso do Chroot, assim como deste servidor sftp. Existe alguma maneira de conseguir isso?
PS: Autofs para o mount não é uma opção, porque tudo é executado em um vserver sem os módulos do Kernel necessários.
Copie o binário sftp-server
e todas as suas dependências ( ldd /usr/lib/openssh/sftp-server
) para o chroot e você poderá executá-lo.
Tags ssh sshd chroot sftp ssh-config