O documento discute controle de acesso a arquivos e diretórios no Linux, explicando propriedades como dono, grupo e outros e permissões de leitura, escrita e execução. Também aborda atributos especiais como SUID, SGID e stick bit e formas de representar e modificar permissões como chmod, chown e chgrp.
1. Técnico de Manutenção e Suporte em Informática
Laboratório de Sistemas Operacionais Abertos
Unidade 11– Permissões Sobre Arquivos e
Diretórios
Prof. Leandro Cavalcanti de Almeida
leandro.almeida@ifpb.edu.br
@leandrocalmeida
2. O Controle de Acesso para
arquivos e diretórios é realizado a
partir das seguintes propriedades:
- Dono, Grupo e Outros
- Leitura, Escrita e Execução
3. Dono - Usuário que criou o
arquivo/diretório
Grupo – conjunto de usuários
que possuem direitos sobre o
arquivo/diretório
Outros – conjunto de usuários
que não são donos ou não fazem
parte do grupo do
arquivo/diretório
4. Permissões de Acesso
Leitura – Permissão de leitura para arquivos e de
listagem de um diretório, representada pela letra r
Escrita – Permissão de escrita em arquivos e de gravação
em um diretório, representada pela letra w
Execução – Permissão de execução de arquivos e de
acesso em um diretório, representada pela letra x
5. No Linux as permissões de acesso
--x
são individuais ...
r-x
- O Dono possui direito de
leitura(r), escrita(w) e
execução(x)
rwx - O Grupo possui direito de
leitura(r) e execução(x)
- Outros possuem o direito
de execução(x)
... isso sob um determinado
arquivo/diretório
6. Na prática funciona assim...
[leandro@notebook ~]$ ls -la teste.txt
-rw-rw-r--. 1 leandro leandro 459 Ago 19 15:36 teste.txt
-rw-rw-r--
1º caractere: Identifica o 5º ao 7º caractere: Identifica a
tipo de arquivo permissão do Grupo
2º ao 4º caractere: Identifica a 8º ao 10º caractere: Identifica a
permissão do Dono permissão dos Outros
7. Na prática funciona assim...
[leandro@notebook ~]$ ls -la teste.txt
-rw-rw-r--. 1 leandro leandro 459 Ago 19 15:36 teste.txt
leandro leandro
Identifica o Dono Identifica o Grupo
do arquivo do arquivo
8. Além dos 10 bits (-rw-rw-r--)
referentes ao tipo de arquivo,
dono, grupo e outros, podem
existir atributos especiais que
completam o mecanismo de
controle de acesso no Linux
9. Atributos Especiais
SUID – ajusta a identificação efetiva do usuário do
processo durante a execução de um programa
SGID – ajusta a identificação efetiva do grupo do
processo durante a execução de um programa
Stick Bit – Mantém uma imagem do programa na
memória depois que ele terminar de executar.
10. Na prática funciona assim...
Ex: SUID no passwd
[leandro@notebook bin]$ ls -l passwd
-rwsr-xr-x. 1 root root 28204 Fev 8 2011 passwd
[leandro@notebook ~]$ passwd
Mudando senha para o usuário leandro.
Mudando senha para leandro.
Senha UNIX (atual):
...
11. Como o usuário leandro consegue
escrever no arquivo e /etc/shadow?
leandro@notebook ~]$ stat /usr/bin/passwd
File: "/usr/bin/passwd"
Size: 28204 Blocks: 56 IO Block: 4096 arquivo comum
Device: 805h/2053d Inode: 162465 Links: 1
Access: (4755/-rwsr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:passwd_exec_t:s0
Access: 2011-09-29 14:31:29.052042519 -0300
Modify: 2011-02-08 12:41:45.000000000 -0300
Change: 2011-09-14 09:30:48.487188832 -0300
Birth: -
R: por causa do bit SUID ativado!
12. Representação OCTAL
Método que permite a
utilização de números octais
para representação de
permissões ao invés das
letras r, w e x
13. Representação OCTAL
0 - Nenhuma permissão de acesso(---)
1 - Permissão de execução (x)
2 - Permissão de gravação (w)
3 - Permissão de gravação e execução (wx)
4 - Permissão de leitura (r)
5 - Permissão de leitura e execução (rx)
6 - Permissão de leitura e gravação (rw)
7 - Permissão de leitura, gravação e execução(rwx)
15. Na prática funciona assim...
Ex: ao invés de utilizar as letras, é mais
rápido e direto utilizar os números octais
letras
[leandro@notebook ~]$ chmod g-w,o-r teste.txt
octal
[leandro@notebook ~]$ chmod 640 teste.txt
Resultado
[leandro@notebook ~]$ ls -l teste.txt
-rw-r-----. 1 leandro leandro 459 Ago 19 15:36 teste.txt
16. chmod
Muda a permissão de acesso de um
arquivo ou diretório
chmod [opções] [permissões] [diretório/arquivo]
Ex:
chmod uo+x teste.txt
Inclui (+) a permissão de execução do arquivo teste.txt para o
dono e outros usuários do arquivo.
17. chgrp
Muda o grupo de um arquivo ou
diretório
chgrp [opções] [grupo] [diretório/arquivo]
Ex:
chgrp grupo1 teste.txt
Altera o grupo do arquivo teste.txt para o “grupo1”
18. chown
Muda o dono/grupo de um arquivo ou
diretório
chown [opções] [dono.grupo] [diretório/arquivo]
Ex:
chown joao.users teste.txt
Muda o dono do arquivo teste.txt para joão e seu grupo para users.