답변:
ssh와 ssh를 통해 다른 서버에 직접 연결할 수있는 한 명의 사용자를 설정해야했습니다 (외부 세계에 직접 연결되지 않음). cstamas와 ericmayo의 연결은 좋은 출발이었습니다.
기본적으로 / etc / ssh / sshd_config에 다음을 추가했습니다.
사용자와 일치 ChrootDirectory / chroot / myuser
거기에서 / chroot / myuser 아래에 chroot 환경을 만들어야했습니다. / bin / bash 및 / usr / bin / ssh와 필요한 공유 라이브러리를 복사했습니다 (ldd에서 표시). 더 큰 환경에서는 필요한 실행 파일의 정적으로 링크 된 버전을 컴파일하는 것이 좋습니다.
Bash는 즉시 작동했습니다 .ssh가 작동하려면 .ssh 디렉토리를 작성하고 / etc / passwd, /etc/nsswitch.conf 및 / lib / libnss_ *를 복사하고 / dev / null, / dev / tty 및 mknod를 통한 / dev / urandom
mkdir /chroot
mkdir -p /chroot/home/<user_name>
mkdir /chroot/home/<user-name>/bin
cp -pr /bin/bash /chroot/home/<user_name>/bin/.
cp -pr /bin/ls /chroot/home/<user_name>/bin/.
cp -pr /lib64 /chroot/home/<user_name>/.
/ etc / sshd_config 파일을 편집하고 추가해야합니다
ChrootDirectory /chroot/%h
그리고 sshd 데몬을 다시 시작하십시오.
솔직히 sftp가 더 나은 옵션이라고 생각합니다.
또한 도움이된다면이 URL을 찾았습니다.
내가 아는 한 OpenSSH의 새 버전은 SFTP 연결에 대해서만 chroot를 허용합니다. 시도하고 작동합니다. 그러나 SSH의 경우 사용 가능한 솔루션은 chrootssh 패치입니다. SourceForge 사이트를 탐색하고 파일이 없으므로 중단 된 것 같습니다.
데비안 에칭의 경우 다음과 같은 파일이 있습니다 : http://debian.home-dn.net/etch/ssh/
여기에 다른 솔루션이 있습니다 : http://www.debian.org/doc/manuals/securing-debian-howto/ap-chroot-ssh-env.en.html , chrootssh 포함.