Criando um usuário tendo apenas acesso à pasta e subpasta que está presente em outro usuário do mesmo sistema

3

Eu tenho 2 usuários no meu sistema Ubuntu, User1 e User2.

Eu tenho um diretório (pasta) no User1 como /home/User1/Software e quero definir essa pasta do Software como o diretório inicial do User2 para que sempre que o user2 fizer login ele possa ver apenas a pasta Software que também tenha acesso de leitura a ele. / p>

Se fizermos login remotamente no sistema por meio do User2, seremos migrados diretamente para a pasta de software com direitos de leitura e não poderemos acessar nenhuma outra pasta, exceto o Software e sua subpasta.

    
por Shailesh Yadav 29.10.2015 / 05:50

2 respostas

2

Você precisa alterar a conta do Usuário2 para que ele use um shell restrito, como rbash .

sudo chsh -s /bin/rbash User2

NOTA: isso restringirá apenas o shell de linha de comando do usuário (incluindo o login via ssh ). Isso não afetará o ambiente de área de trabalho da GUI, por exemplo. se eles fizerem login no console.

Veja man rbash para mais detalhes, mas algumas das restrições são que o usuário é impedido de:

· changing directories with cd

· setting or unsetting the values of SHELL, PATH, ENV, or BASH_ENV

· specifying command names containing /

· specifying a filename containing a / as an argument to the . builtin command

· redirecting output using the >, >|, <>, >&, &>, and >> redirection operators

· using the exec builtin command to replace the shell with another command

These restrictions are enforced after any startup files are read.

O redirecionamento de bloqueio pode ser excessivo para as suas necessidades (ou talvez não, já que o diretório é somente leitura), mas infelizmente com rbash é tudo ou nada.

    
por 29.10.2015 / 06:27
1

Como impedir que um usuário veja qualquer arquivo no diretório /home , exceto o próprio

Faça isso gerenciando permissões de arquivos nos diretórios que você não deseja que o usuário veja.

Dê ao usuário um nome de login e um nome de grupo exclusivos. Verifique se eles não têm propriedade no sistema; obtenha seu ID de usuário numérico e id de grupo e execute:

sudo find / -uid n -o -gid n

Disponibilize todos os arquivos em /home apenas para user e group , não other .

sudo chmod -R o-rwx /home

Para permitir que os outros usuários no sistema vejam os arquivos uns dos outros em /home , adicione-os a um grupo comum, como users , e defina seu umask para 002 (geralmente o padrão).

Se precisar de mais restrições do que isso, você pode investigar soluções envolvendo rbash e / ou chroot.

    
por 01.11.2015 / 01:05