As permissões são uma ferramenta poderosa de segurança que definem quem poderá ler, escrever ou executar um arquivo. Cada arquivo tem suas regras definidas expressas de forma textual como drwxrwxrwx ou de forma numérica como 644.
Quem pode receber as permissões são o dono, geralmente o criador do arquivo, mas pode-se mudar caso necessário. O grupo, cada usuário pode pertencer a diversos grupos enquanto que cada arquivo pode pertencer a um grupo. O público, qualquer um que tem acesso ao sistema é classificado como membro do grupo público.
As permissões são: ler o conteúdo do arquivo, escrever no arquivo (substituir ou deletar) e executar o conteúdo do arquivo.
Executar Sem Ler
Para executar um arquivo não é necessário necessariamente ter a permissão de ler, somente fazer o que está escrito. Os arquivos podem conter nomes de usuário, senhas, nomes de banco de dados que não é preciso serem lidos.
Entendendo a Forma Textual das Permissões
Tendo como base:
d | rwx | rwx | rwx
A primeira letra (d) representa o diretório. (-) indica um arquivo e (l) um link.
rwx representam Read (Ler), Write (Escrever) e Execute (Executar). Pode também ser substituído por um (-) quando o usuário não tem acesso. O primeiro grupo de três letras são para o dono, seguido para o grupo e por fim para o público.
Entendendo a Forma Numérica
A representação de três números mostra as permissões em sua ordem para o dono, grupo e público. Além disso, ela ignora se ela é diretório, arquivo ou link.
Os valores são: r = 4, w = 2 e x = 1 que devem ser somados e colocados em suas respectivas ordem. Portanto, se o dono tiver a permissão de ler e escrever, a soma será 6, e se o grupo e o público tiver somente a permissão de ler a soma será 4, resultando no seguinte número: 644. Se todos os usuários tiverem acesse a tudo, a representação numérica seria 777 (4 + 2 +1 para cada usuário).