Entendendo permissões de arquivos no Linux

Entendendo permissões de arquivos no Linux

Antes de tudo, permissão de arquivos é um fator crítico quando trata-se de segurança, uma vez que uma permissão mal aplicada pode comprometer seu ambiente. Dito isto, as permissões dos arquivos no Linux são compostas por três elementos: Usuário (user), grupo (group) e outros (others).

Cada um destes elementos poderá ter permissões para ler, escrever ou executar o objeto.

1 | Como visualizar as permissões de um arquivo

Existem diversas maneiras de visualizar as permissões de um arquivo no Linux. Veja algumas a seguir.

1.1 | Utilizando ls

ls -l arquivo.txt
Ver permissão de arquivos linux

1.2 | Utilizando stat

stat arquivo.txt
permissão linux

1.3 | Utilizando getfacl

getfacl arquivo.txt
getfacl linux

2 | Entendendo as permissões

2.1 | Entendendo os tipos de permissão

Para entender os tipos de permissões, veja a tabela abaixo:

PermissãoValorDescrição
Read (r)4O elemento pode ler o objeto
Write (w)2O elemento pode editar/escrever no objeto
Execute (x)1O elemento pode executar o objeto

Desta maneira, dizer que um arquivo possui permissão 777 significa que todos os elementos (usuário, grupo e outros) possuem permissão de leitura, escrita e execução. Ou seja, Leitura+Escrita+Execução (4+2+1) = Permissão total (7).

2.1 | Entendendo os elementos

Para entender os elementos, veja a tabela abaixo:

ElementoDescrição
UsuárioUsuário dono/owner do objeto
GrupoGrupo dono/owner do objeto
OutrosQualquer outro usuário que não se encaixe nos 2 anteriores

2.2 | Entendendo o output do comando ls

Veja abaixo uma imagem do output do comando ls para entendê-lo:

comando ls linux

3 | Alterando as permissões de um objeto

3.1 | Apenas um objeto

Para alterar as permissões de um objeto, utilize o comando chmod, como exemplificado abaixo:

chmod 644 arquivo.txt

3.1 | Permissão recursiva

Para alterar as permissões de diversos objetos de maneira recursiva:

chmod -R 755 /home/kali/

Ou:

chmod -R u=rwx,go=rx /tmp

4 | Alterando o dono (owner) de um objeto

4.1 | Apenas um objeto

É possível alterar apenas o usuário:

chown kali /home/kali/

Ou usuário e o grupo:

chown kali:kali /home/kali/

4.1 | Recursivamente

Para realizar a operação de maneira recursiva:

chown -R kali:kali /home/kali/

5 | Alterando o grupo de um objeto

5.1 | Apenas um objeto

Para alterar apenas o grupo:

chgrp kali arquivo.txt

5.1 | Recursivamente

Para realizar a operação de maneira recursiva:

chgrp -R kali /home/kali/

6 | Curiosidade

Por fim, vamos ver uma curiosidade: Digamos que o arquivo.txt esteja com permissão 070 e esteja com owner usuário kali e grupo kali.

Você acha que é possível o usuário kali (que está no grupo kaliler o arquivo.txt?

A resposta correta é: NÃO. O Linux utilizará a permissão mais específica possível. Veja o resultado abaixo:

permissão no linux

Por fim, agradecemos a leitura e esperamos que este post tenha te ajudado de alguma maneira! Caso tenha alguma dúvida, entre em contato conosco pelo Telegram , Facebook ou Instagram ! Veja mais posts no IronLinux !