Usuário chroot desconectado imediatamente após o login


0

Estou tentando usar o chroot para configurar um usuário que pode fazer login via ssh e limitar o acesso ao /var/wwwdiretório. O servidor está na AWS executando o Amazon Linux de 64 bits, openssh instalado. Eu usei o ssh-keygen para gerar as chaves.

Antes de editar o sshd_configarquivo, consigo fazer login com o nome de usuário e a chave privada, o usuário inicia no /home/my-usernamediretório e, portanto, a chave é válida.

Eu modifiquei o sshd_configarquivo da seguinte maneira:

Subsystem sftp internal-sftp

Match User my-username
ChrootDirectory /var/www
ForceCommand internal-sftp
AllowTcpForwarding no
PermitTunnel no
X11Forwarding no

Então eu reiniciei o sshd.

O ChrootDirectory /var/wwwarquivo pertence à raiz: raiz, sem grupos com privilégios de gravação até aquele ponto na árvore - instalação padrão do Apache.

Quando eu entro com meu nome de usuário e a chave, a sessão é desconectada imediatamente. Eu verifiquei /var/log/securee encontrei esta entrada:

Nov  3 19:53:51 ip-xxx.xxx.xxx.xxx sshd[2945]: Accepted publickey for my-username from xxx.xxx.xxx.xxx port 61821 ssh2
Nov  3 19:53:51 ip-xxx.xxx.xxx.xxx sshd[2945]: pam_unix(sshd:session): session opened for user my-username by (uid=0)
Nov  3 19:53:51 ip-xxx.xxx.xxx.xxx sshd[2945]: pam_unix(sshd:session): session closed for user my-username

Eu li vários tópicos em muitos fóruns e vejo soluções diferentes - algumas das quais tentei sem sucesso. Eu gostaria de manter isso o mais simples possível. O objetivo é criar uma conta de usuário para um desenvolvedor que só precisa fazer upload de arquivos para o servidor da Web usando o WinSCP, no caso padrão para /var/www/html.

Encontrei este tópico - o usuário é desconectado instantaneamente após a conexão bem-sucedida em um SSH com chroot - mas não tenho certeza se ele está diretamente relacionado ao meu problema.

Eu estou pensando que isso pode ter algo a ver com a minha configuração PAM. Novamente, essa é praticamente uma instalação padrão.

Agradecemos antecipadamente por qualquer orientação que você possa fornecer.


Você tentou se conectar com sftp / scp?
Michael Hampton

Sim eu fiz. Iria atualizar minha pergunta. O WinSCP funciona bem e realiza o que me propus a fazer.
Complectia

Respostas:


0

Os ambientes Chroot requerem a presença de todas as bibliotecas e binários necessários para a operação normal. Isso inclui todos os arquivos de objetos compartilhados aos quais o shell de logon está vinculado. Se você copiar binários de comando adicionais neste chroot, também precisará das dependências do vinculador.

  • Procure um guia sobre como configurar um ambiente chroot para logins ssh. Exemplo que encontrei no Google: http://allanfeid.com/content/creating-chroot-jail-ssh-access )
  • Considere se você realmente deseja criar esse ambiente chroot em / var / www. Você realmente quer /var/www/dev, /var/www/libetc.?

Andrew - obrigado pela resposta e pelo link. Finalmente descobri que era isso que estava me deixando com Putty. O WinSCP permite que eu faça o que eu quero nesta instância, carregue arquivos na pasta HTML pública do servidor web - embora possa haver outros casos de uso nos quais isso será útil.
Complectia
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.