Tornando o diretório ChrootDirectory gravável pelo usuário do SFTP

3

Se um usuário efetuar login em uma máquina via SFTP, pode-se usar a palavra-chave ChrootDirectory para dar a ilusão de que o usuário está em um diretório raiz. Mas esse diretório só pode ser escrito por root user. Eu adoraria que esse usuário tivesse esses recursos de gravação, e não parece que o OpenSSH oferece isso, a menos que eu tenha perdido alguma coisa?

Estou ciente de que o usuário do SFTP pode receber acesso de gravação a qualquer arquivo / diretório dentro desse ChrootDirectory , mas não é bom o suficiente. Eu quero que o usuário também crie / exclua os arquivos diretamente sob o diretório "root", sem a solução alternativa de criar um subdiretório ao qual esse usuário tenha acesso de gravação.

    
por Tshepang 10.01.2013 / 09:16

1 resposta

0

Eu tive o mesmo problema com meu SFTP interno. O que eu fiz para contornar isso é:

Dentro do seu arquivo sshd_config :

Match group     sftpusers
  ChrootDirectory %h

Dentro do seu arquivo / etc / groups , adicione seu usuário sftp ao grupo sftpusers (crie-o se ele não existir):

sftpusers:x:6000:user1,user2

Para o ChrootDirectory, certifique-se de chown do diretório para o seguinte (aviso cuidado do diretório em que você está executando este comando, verifique se ele está sendo executado somente no diretório em que o usuário logar, o -R commend significa recursivo, portanto, se houver uma subpasta você não deseja que este comando inclua, remova-o. Também um usuário SFTP nunca deve ter acesso a um diretório do sistema de nível raiz como /etc , melhor fazer uma pasta com algo como /usr/local/alcatraz e dar acesso a ela) :

chown -R root:sftpusers userChrootDirectory

Chmod o diretório para ter a permissão que você deseja, algo como:

drwxrws---

Se você precisar de mais informações, deixe-me saber, este é apenas o destaque, que deve levá-lo para onde você quer estar.

    
por 25.12.2015 / 23:01