SSH SFTP только с chroot и командой

SSH SFTP только с chroot и командой

Я пытаюсь ограничить доступ к SFTP только с одной учетной записью пользователя. После входа должны быть выполнены некоторые команды. Поэтому я вставил forcecommand в свой sshd_config:

Match group stream
   #ChrootDirectory /home/%u
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand sudo /etc/mountsftp.sh
   #ForceCommand internal-sftp

Это работает отлично, и мой командный скрипт:

#!/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

выполняется. Но после CHROOT не возможно запустить sftp-сервер, потому что он не найден после chroot. Но мне нужен Chroot, а также этот sftp-сервер. Есть ли способ сделать это?

PS: Autofs для монтирования не вариант, поскольку все выполняется на виртуальном сервере без необходимых модулей ядра.

решение1

Скопируйте sftp-serverдвоичный файл и все его зависимости ( ldd /usr/lib/openssh/sftp-server) в chroot, и вы сможете его запустить.

Связанный контент