Permissões de acesso a pastas - como elas funcionam? [duplicado]

0

Eu me pergunto - por que, quando alguma pasta tem read ou read-write permissões para GROUP (ou other ), os membros do GROUP (ou other ) não podem acessar esta pasta ?

Tenho quase certeza de que há uma explicação lógica, mas não consigo encontrá-lo. Deixe-me dar um exemplo.

Circunstâncias iniciais

1. Existem dois usuários, chamados admin e guest .

2. Existe uma pasta chamada /var/www/test-dir :

$ getfacl -pt /var/www/test-dir/
# file: /var/www/test-dir/
USER   root      rwx
GROUP  admin     r-x
other            r-x

3. Dentro dessas permissões, todos os usuários podem acessar a pasta:

  • USER root rwx (7) é capaz de acessar a pasta.

  • GROUP admin r-x (5) é capaz de acessar a pasta.

  • other guest r-x (5) é capaz de acessar a pasta.

    guest@host:~$ cd /var/www/test-dir/
    guest@host:/var/www/test-dir$ ࢒
    

Casos

Caso 1: other tem r-- permissões, mas admin não pode acessar a pasta:

root@host:~# chmod 574 /var/www/test-dir/
  • USER root r-x (5) é capaz de acessar a pasta.

  • GROUP admin rwx (7) é capaz de acessar a pasta.

  • other guest r-- (4) é incapaz de acessar a pasta.

    guest@host:~$ cd /var/www/test-dir
    bash: cd: /var/www/test-dir/: Permission denied
    

Caso 2: other tem rw- permissões, mas guest não pode acessar a pasta:

root@host:~# chmod 656 /var/www/test-dir/
  • USER root rw- (6) é capaz de acessar a pasta.

  • GROUP admin r-x (5) é capaz de acessar a pasta.

  • other guest rw- (6) é incapaz de acessar a pasta:

Caso 3: GROUP tem r-- permissões, mas admin não pode acessar a pasta:

root@host:~# chmod 745 /var/www/test-dir/
  • USER root rwx (7) é capaz de acessar a pasta.

  • GROUP admin r-- (4) é incapaz de acessar a pasta.

  • other guest r-x (5) é capaz de acessar a pasta.

Caso 4: GROUP tem rw- permissões, mas admin não pode acessar a pasta:

root@host:~# chmod 467 /var/www/test-dir/
  • USER root r-- (4) é capaz de acessar a pasta.

  • GROUP admin rw- (6) é incapaz de acessar a pasta.

  • other guest rwx (7) é capaz de acessar a pasta.

por pa4080 11.05.2017 / 02:12

2 respostas

2

As permissões de pasta não são as mesmas que as típicas. Em um diretório, as permissões são as seguintes:

  • r : o conteúdo do diretório pode ser listado (como com ls )?
  • w : O diretório pode ser modificado (novos arquivos adicionados, arquivos excluídos, renomeados etc.)?
  • x : o diretório pode ser acessado por cd e semelhantes?

A permissão r não exige que x seja definido em uma pasta (você pode usar a pasta ls an r-- ), mas não poderá ver nada além de nomes de arquivos:

ls: cannot access 'test/..': Permission denied
ls: cannot access 'test/.': Permission denied
ls: cannot access 'test/file': Permission denied
total 0
d????????? ? ? ? ?            ? ./
d????????? ? ? ? ?            ? ../
-????????? ? ? ? ?            ? file

A permissão w exige que x seja definido em todos casos. Você não poderá alterar um diretório com apenas rw- de acesso a ele.

Enquanto isso, a permissão x é essencialmente a permissão principal. Para ver os metadados do arquivo (como permissões), navegue até o arquivo ou até mesmo trabalhe em arquivos dentro da pasta em que você tem acesso de gravação, você precisará da permissão x .

Veja o Wiki do Arch para alguns bons exemplos de permissões de diretório.

Como de costume, a conta root recebe automaticamente todas as permissões sob o sol.

    
por Kaz Wolfe 11.05.2017 / 02:49
0

Você precisa ser root ou ter permissão de execução ('x') para acessar uma pasta.

    
por Florian Diesch 11.05.2017 / 02:49