
Se o usuário logar, ele inicia em /do chroot (que é /var/jail na máquina real). Eu gostaria que ele começasse em seu diretório inicial. Além disso, ele parece não carregar nenhum de seus arquivos de perfil (.bash.rc etc). eu seguiessetutorial para criar o ambiente chroot. Esta é a aparência do meu /etc/passwd:
test:x:1004:1008:,,,:/var/jail/home/test:/bin/bash
esta é a aparência do meu arquivo /var/jail/etc/passwd:
test:x:1004:1008:,,,:/home/test:/bin/bash
Também descobri que, se eu remover
Match User test
ChrootDirectory /var/jail
AllowTCPForwarding no
X11Forwarding no
do meu /etc/ssh/sshd_config, o usuário inicia em sua pasta inicial correta e com suas configurações de bash carregadas. Porém, ele é capaz de sair do ambiente chroot se eu remover essa parte.EsseA pergunta que fiz antes está um tanto relacionada, pois acho que a aparência errada da linha de comando é causada pelos arquivos de perfil não carregados. Então, alguma idéia de como consertar isso?
Responder1
Sua configuração está correta, exceto por um pequeno detalhe: o diretório inicial /etc/passwd
não deve conter a parte do caminho chroot. Altere para:
test:x:1004:1008:,,,:/home/test:/bin/bash
reinicie sshd
e tente novamente.
De man sshd_config
:
Diretório Chroot
Especifica o nome do caminho de um diretório para chroot(2) após a autenticação. Todos os componentes do nome do caminho devem ser diretórios de propriedade raiz que não possam ser gravados por nenhum outro usuário ou grupo. Após o chroot, sshd(8) muda o diretório de trabalho para o diretório inicial do usuário.
Ou seja, primeiro sshd
executa chroot
(no nosso caso chroot /var/jail
) e depois sshd
muda o diretório para o homedir do usuário (no nosso caso cd /home/test
- em um ambiente chroot cd /var/jail/home/test
não funcionaria).
Se você estiver usando Debian/Ubuntu (já que o tutorial que você mencionou é para Debian), você pode querer criar um arquivo chamado /var/jail/etc/debian_chroot
com conteúdo "chroot", isso aparecerá no prompt do usuário entre parênteses como este: (chroot)test@servername:~$
.
(Dupliquei sua configuração no meu Ubuntu 12.04 e funcionou após a remoção /var/jail
da entrada do teste do usuário em /etc/passwd
.)