|
||
|
|
|
Avaliação: Não avaliado | Publicado em: 11/01/2008
Permissão de Arquivos - parte 1
Frederico Madeira Formado em Engenharia Eletrônica pela UPE, é Administrador de Redes, LAN / WAN, responsável pela administração de diversos servidores Linux e Windows 2003.
Certificado CCNA Cisco.
Estudante de Pós Graduação de Segurança de Redes na AESO.
Desenvolve projetos em Linux, PHP, MySQL, projetos de Rede, LAN, WAN e wifi.
Esse assunto está dividido em duas partes:
Na primeira, conheceremos melhor o aspecto da permissão de um arquivo, em que ela se baseia, como checar as permissões de determinados objetos do sistema de arquivo e como as máscaras são formadas. Na segunda, veremos os comandos fundamentais para alterar as permissões dos arquivos ou pastas (chmod, chown, chgrp, umask) e aspecto avançados sobre permissões. Permissões, são conjuntos de direitos que são aplicados a arquivos ou diretórios do sistema de arquivo. Elas garantem que um usuário que não se enquadre nas permissão atribuídas a um arquivo, não tenha acesso ao mesmo, ou não possa executá-lo, ou ainda alterá-lo. Desta forma pode-se garantir a integridade e/ou sigilosidade dos arquivos e pastas no sistema de arquivos. Nos sistemas linux, o modelo de permissão, funciona em três níveis independentes:
Para checarmos quis permissões um determinado arquivo ou diretório possuem, podemos usar o comando abaixo: [fred@notebook tmp]$ ls -all Na primeira coluna temos o identificador do objeto e as permissões aplicadas a ele, na terceira coluna temos o dono do arquivo e na quarta coluna temos o grupo o qual o arquivo faz parte.
Tomaremos como exemplo, o identificador do arquivo DSC07854.JPG. Vamos separá-lo da seguinte forma:
O primeiro caractere '-' especifica o tipo do arquivo, no caso destacado acima, ele é um arquivo regular. É bom frisar que o linux trata os diretórios com arquivos, logo, o modelo aplica-se igualmente a eles. Os tipos possíveis para esse campo são:
O resto do campo de permissão, é composto por três grupos de três caracteres, representando o usuário, o grupo e todos os outros, respectivamente. Os valores convencionais para esses campos são:
Com isso, percebemos que o arquivo regular abaixo possui as seguintes permissões: -rw-rw-r-- 1 fred casa 154913 Fev 7 11:52 DSC07855.JPG
Além da forma acima, podemos especificar as permissões de um arquivo, usando o modelo octal abaixo:
Poderíamos especificar a permissão do arquivo das seguintes maneiras: rw-rw-r-- 110110100 664 – Mais comum Com isso, podemos criar o quadro abaixo contendo as permissões em forma decimal:
O conhecimento da tabela acima é fundamental a administrador de sistemas. No dia a dia é muito comum se depara com a necessidade de alterar as permissões de arquivos e pastas. Permissões Especiais Ainda existe três permissões que podem ser atribuídas a um objeto do sistema de arquivos: Suid Se o bit de SUID for ativo para um arquivo, sempre que esse arquivo for executado, ele rodará com as permissões do dono do arquivo. Para exemplificar, imaginemos o aplicativo teste.sh cujo dono seja o root. Se o usuário fred executar esse arquivo, ele será executado com as permissões do usuário root. O bit SUID é representado pela letra s no local do bit de execução w no campo de permissão do usuário. Vejamos o exemplo abaixo: [root@localhost fred_m]# ls -all /usr/bin/passwd Sgid De forma semelhante, podemos atribuir o bit SGID no campo da permissão referente ao grupo. Em um diretório que possua o bit SGID setado, todos os arquivos criados dentro dele, pertencerão ao mesmo grupo do diretório corrente ao invés de pertencer ao grupo do usuário que o criou. Veja o exemplo abaixo: [root@localhost Público]# ls -all Esta permissão é útil quando queremos utilizar um diretório no qual várias pessoas do mesmo grupo compartilharão arquivos nele. Obs: S = apenas suid ou sgid s = suid/sgid + x(execução) Stick Ao se ativar esse permissão em um diretório, os arquivos criados/contidos nele só poderão ser apagados pelo seu dono. Imaginemos o diretório /tmp no qual todos os usuários possuem acesso total. Neste diretório os usuários só podem apagar os arquivos que eles criaram. Essa permissão só é aplicada a diretórios e é expressão no bit de execução do campo de permissão de outros. Ela é expressa pela letra t. [root@localhost /]# ls -all / Obs: T = apenas stick t = stick + x(execução) Da mesma forma que as permissões convencionais, as permissões especiais podem ser representadas pelo modelo octal conforme tabela abaixo:
Frederico Madeira fred@madeira.eng.br Links relacionados
Este artigo é a parte 1 de 2 da seguinte série:
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|