Eu gostaria de configurar uma prisão chroot para a maioria (não todos) dos usuários que fazem login por meio de SSH. Ouvi dizer que é possível com as versões mais recentes do openssh, mas não consegui descobrir como fazer isso. Todos os How To falam em corrigir uma versão antiga, e o patch não está mais disponível.
Estou executando o debian etch.
Responder1
Estou usando o rssh para essa finalidade.
Você está certo, existe uma nova maneira de fazer isso e é um recurso integrado das versões ssh recentes.
Aqui está um artigo sobreMorto-vivo.
Responder2
Eu só tive que configurar um usuário que pudesse fazer login via ssh e ssh em outro servidor (que não esteja diretamente conectado ao mundo externo). Os links de cstamas e ericmayo foram um bom começo.
Basicamente, adicionei o seguinte ao /etc/ssh/sshd_config:
Corresponder usuário meu usuário ChrootDirectory /chroot/meuuser
A partir daí, só tive que criar o ambiente chroot abaixo de /chroot/myuser. Copiei /bin/bash e /usr/bin/ssh e as bibliotecas compartilhadas que eles precisavam (ldd mostrará isso). Para um ambiente maior, provavelmente faria sentido compilar versões vinculadas estaticamente dos executáveis necessários.
Bash funcionou imediatamente, para o ssh funcionar, eu também tive que criar o diretório .ssh, copiar /etc/passwd, /etc/nsswitch.conf e /lib/libnss_* e criar /dev/null, /dev/tty e /dev/urandom via mknod.
Responder3
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>/.
Você tem que editar o arquivo /etc/sshd_config e addd
ChrootDirectory /chroot/%h
E reinicie o daemon sshd.
Dito isso, honestamente acho que o sftp é a melhor opção.
Além disso, encontrei este URL se for útil.
Responder4
Pelo que eu sei, as novas versões do OpenSSH permitem apenas chroot para conexões SFTP. Eu tentei e funciona. Mas para SSH a solução disponível é o patch chrootssh. Eu navego no site SourceForge e não há arquivos, então acho que foi descontinuado.
Para o Debian Etch existem alguns arquivos aqui:http://debian.home-dn.net/etch/ssh/
Existem outras soluções aqui:http://www.debian.org/doc/manuals/securing-debian-howto/ap-chroot-ssh-env.en.html, incluindo chrootssh .