Tips:ACL

Neste post irei inserir recriar cenários para dar uma ilustração pratica das ACLs do linux. As acls são o sistema de acesso e credenciais do sistema gnulinux.

O primeiro conceito que precisamos entender é o do Umask, o umask é uma (máscara de usuário) que seta o default para os usuarios no S/O linux, ele seta qual permissão padrão os arquivos e diretórios terão. O sistema operacional Debian tem o umask 0022, que significa: Leitura e escrita para o proprietário de um arquivo e leitura para os membros do seu grupo e os outros usuários.
Para os diretórios, o padrão acrescenta a execução que é leitura, escrita e execução para o proprietário, leitura e execussão para os membros do grupo e os outros.

root@host# umask
[...]
0022
[...]

root@host# ls -l ./
[...]
-rw-r--r-- 1 root root 0 dez 23 21:25 arquivo0
-rw-r--r-- 1 root root 0 dez 23 21:25 arquivo1
[...]


Permissões: 
As permissões para o linux  são identificadas de duas formas, uma é no modo octal (4,2,1) e o outro é o modo simbolico (rwx).
Segue abaixo um exemplo:

-rw--r--r-- Octal: 644 [arquivo]
drwxr-xr-x  Octal: 755 [diretorio]

Na ordem, a sequencia de campos dos arquivos, demonstrados no ls significa : 1º  Caractere especial, campos do 2º ao 4º proprietário, campos do 5º ao 7º grupo, e os 3 últimos campos são relativos ao grupo.

Para alterar a permissão dos arquivos, basta utilizar o comando chmod +octal ou executar o modo simbólico.
Exemplo:
root@host# ls -l arquivo0
[...]
-rw-r--r-- 1 root root 0 dez 23 21:25 arquivo0
[...]

root@host# chmod +x arquivo0
root@host# ls -l arquivo0
[...]
rwxr-xr-x 1 root root 0 dez 23 21:25 arquivo0
[...]


Note que o modo simbólico indica que o arquivo "arquivo0" está com a execussão setada para todos os usuarios.


stickbit 1: em um diretório com o stickbit ativado, apenas o proprietário deste poderá apaga-lo ou renomea-lo.
root@host# chmod 1755

#Reforço a Acl do sistema.
sgid:Faz com que qualquer grupo tenha as mesmas permissões que o grupo proprietário do arquivo.
root@host# chmod 2775
suid:Faz com que qualquer usuario tenha as mesmas permissões que o proprietário do arquivo.
Valor 4:
root@host# chmod 4755

setfacl:Seta permissões para um usuario especifico em um arquivo/diretório.
root@host# setfacl -m user:urcunha:rwx arquivo
root@host# setfacl -m group:grcunha:rwx arquivo
Verificar as permissões
root@host# getfacl arquivo

Remover  as ACLS setadas pelo setfacl:

remover a acl de um usuario:

root@host# setfacl -x u:www-data arquivo0
remover todas as acls especiais de um arquivo:
root@host# setfacl -bn arquivo0


Comments