Dando permissão ao usuário para apenas um único diretório

0

Estou usando o debian no meu servidor doméstico. Meu objetivo é criar um usuário com permissões para enviar arquivos apenas em seu diretório (/var/www/user) . O usuário deve poder acessar seu diretório usando o SSH, mas ele não poderá ver os diretórios pai. / var / www / user deve ser o seu diretório raiz e ele não deve poder ver / var / www. Como posso restringir permissões de usuários assim?

    
por Deepsy 01.01.2014 / 21:29

2 respostas

2

Você pode colocar a seguinte diretiva em / etc / ssh / sshd_config:

ChrootDirectory /var/www/%u

Veja man sshd_config .

Note que com esta configuração, o usuário não poderá entrar em uma sessão interativa, a menos que / var / www / user contenha um ambiente de shell completo (/ bin / sh e assim por diante). Mas eles poderão usar ssh / scp / sftp para transferir arquivos para dentro e fora desse diretório.

O acima será aplicado a todos os usuários. Para restringi-lo a apenas um usuário, adicione Match User user em sshd_config antes de ChrootDirectory .

    
por 01.01.2014 / 21:43
0

Talvez o jailkit possa ser útil. Esta é uma ferramenta para configurar um ambiente chroot para um usuário, fornecendo apenas executáveis muito específicos, limitando o acesso a um determinado diretório e seus subdiretórios.

    
por 02.01.2014 / 11:59