Je viens de configurer un utilisateur qui pourrait se connecter via ssh et le ssh à un autre serveur (qui n'est pas directement connecté au monde extérieur). Les liens entre cstamas et ericmayo ont été un bon début.
Fondamentalement, j'ai ajouté ce qui suit à / etc / ssh / sshd_config:
Correspondance avec l'utilisateur myuser
ChrootDirectory / chroot / myuser
À partir de là, je devais juste créer l'environnement chroot sous / chroot / myuser. J'ai copié / bin / bash et / usr / bin / ssh et les bibliothèques partagées dont ils avaient besoin (ldd les affichera). Pour un environnement plus vaste, il serait probablement judicieux de compiler des versions liées statiquement des exécutables nécessaires.
Bash a fonctionné tout de suite, pour que ssh fonctionne, j'ai également dû créer le répertoire .ssh, copier / etc / passwd, /etc/nsswitch.conf et / lib / libnss_ * et créer / dev / null, / dev / tty et / dev / urandom via mknod.
Pour autant que je sache, les nouvelles versions d'OpenSSH n'autorisent le chroot que pour les connexions SFTP. J'ai essayé et ça marche. Mais pour SSH, la solution disponible est le patch chrootssh. Je navigue sur le site SourceForge et il n'y a pas de fichiers donc je pense qu'il est abandonné.
Pour Debian Etch, il y a quelques fichiers ici: http://debian.home-dn.net/etch/ssh/
Il existe d'autres solutions ici: http://www.debian.org/doc/manuals/securing-debian-howto/ap-chroot-ssh-env.en.html , y compris chrootssh.
la source