Anúncios

neste capítulo, vamos discutir em detalhe sobre permissão de arquivo e modos de acesso em Unix. A propriedade de arquivos é um componente importante do Unix que fornece um método seguro para armazenar arquivos., Cada arquivo no Unix tem os seguintes atributos –

  • permissões do Dono − as permissões do dono determinam quais as ações que o dono do arquivo pode realizar no arquivo.

  • Permissões de grupo-as permissões do grupo determinam quais ações um usuário, que é um membro do grupo a que um arquivo pertence, pode realizar no arquivo.

  • outras permissões (do mundo) − as permissões para outros indicam que ação todos os outros usuários podem realizar no arquivo.,

A Permissão de Indicadores

Enquanto estiver usando o comando ls-l, ele exibe diversas informações relacionadas com permissão de arquivo como o seguinte:

$ls -l /home/amrood-rwxr-xr-- 1 amrood users 1024 Nov 2 00:10 myfiledrwxr-xr--- 1 amrood users 1024 Nov 2 00:10 mydir

Aqui, a primeira coluna representa diferentes modos de acesso, por exemplo, a permissão associada a um arquivo ou um diretório.

As permissões são divididas em grupos de três, e cada posição no grupo denota uma permissão específica, por esta ordem: leitura (r), gravar (w) e executar (x) −

Arquivo de Modos de Acesso

As permissões de um arquivo são a primeira linha de defesa, a segurança de um sistema Unix., Os blocos básicos das permissões do Unix são as permissões de leitura, escrita e execução, que foram descritas abaixo −

Read

concede a capacidade de ler, ou seja, ver o conteúdo do arquivo.

Write

concede a capacidade de modificar ou remover o conteúdo do ficheiro.

Execute

User with execute permissions can run a file as a program.

os modos de acesso a directórios

os modos de acesso a directórios estão listados e organizados da mesma forma que qualquer outro ficheiro., Existem algumas diferenças que precisam ser mencionadas –

leia

acesso a um diretório significa que o usuário pode ler o conteúdo. O usuário pode olhar para os nomes de arquivos dentro do diretório.

Write

Acesso significa que o utilizador pode adicionar ou apagar ficheiros do directório.

Execute

executando um diretório realmente não faz sentido, então pense nisso como uma permissão transversal.

um usuário deve ter acesso à pasta de bin para executar o comando ls ou cd.,

alterando as permissões

para alterar o ficheiro ou as permissões da pasta, você usa o comando chmod (modo de mudança). Existem duas maneiras de usar o chmod-o modo simbólico e o modo absoluto.

usando chmod no modo simbólico

a maneira mais fácil para um iniciante modificar as permissões de arquivo ou diretório é usar o modo simbólico. Com permissões simbólicas, você pode adicionar, apagar ou especificar o conjunto de permissões que deseja usando os operadores na tabela seguinte.

remove a(s) permissão (ões) designada (s) de um ficheiro ou directório.

=

define a(s) permissão (ões) designada (s).

Sr.No., chmod operator& Description
1

+

adiciona a(s) permissão (ões) designada (s) a um ficheiro ou directório.

2
3

Aqui está um exemplo usando testfile., Executar ls -1 no testfile mostra que as permissões do arquivo são como segue:

$ls -l testfile-rwxrwxr-- 1 amrood users 1024 Nov 2 00:10 testfile

em Seguida, cada exemplo comando chmod a partir da tabela anterior é executado no testfile, seguido pelo ls –l, assim, você pode ver as alterações de permissão −

Aqui está como você pode combinar esses comandos em uma única linha

$chmod o+wx,u-x,g = rx testfile$ls -l testfile-rw-r-xrwx 1 amrood users 1024 Nov 2 00:10 testfile

Usando chmod com Absoluta Permissões

A segunda forma de modificar as permissões com o comando chmod é a utilização de um número para especificar cada conjunto de permissões para o arquivo.,

a cada permissão é atribuído um valor, como a tabela seguinte mostra, e o total de cada conjunto de permissões fornece um número para esse conjunto.

Aqui está um exemplo usando o testfile. Executar ls -1 no testfile mostra que as permissões do arquivo são como segue:

$ls -l testfile-rwxrwxr-- 1 amrood users 1024 Nov 2 00:10 testfile

em Seguida, cada exemplo comando chmod a partir da tabela anterior é executado no testfile, seguido pelo ls –l, de modo que você pode ver as alterações de permissão −

Alterar Proprietários e Grupos

ao criar uma conta no Unix, ele atribui um ID de proprietário e um ID de grupo para cada usuário., Todas as permissões mencionadas acima também são atribuídas com base no proprietário e nos grupos.

estão disponíveis dois comandos para alterar o dono e o grupo de ficheiros −

  • chown − o comando chown significa “dono da mudança” e é usado para alterar o dono de um ficheiro.

  • chgrp − o comando chgrp significa “grupo de mudança” e é usado para alterar o grupo de um ficheiro.

mudança de propriedade

o comando chown altera a propriedade de um ficheiro., A sintaxe básica é a seguinte:

$ chown user filelist

O valor do usuário pode ser o nome de um usuário no sistema ou a identificação do usuário (uid) de um usuário no sistema.

o exemplo seguinte irá ajudá −lo a compreender o conceito –

$ chown amrood testfile$

muda o dono do ficheiro indicado para o utilizador amrood.

Nota − O super usuário, root, tem a capacidade irrestrita de mudar a propriedade de qualquer arquivo, mas os usuários normais podem mudar a propriedade de apenas os arquivos que eles possuem.,

mudar a propriedade do Grupo

o comando chgrp muda a propriedade do grupo de um ficheiro. A sintaxe básica é a seguinte:

$ chgrp group filelist

O valor do grupo pode ser o nome de um grupo sobre o sistema ou o ID do grupo (GID) de um grupo no sistema.

a seguir o exemplo ajuda-o a compreender o conceito −

muda o grupo do ficheiro dado para um grupo especial.

SUID e Sgid File Permission

Often when a command is executed, it will have to be executed with special privileges in order to complete its task.,

Como exemplo, quando muda a sua senha com o comando passwd, a sua nova senha é guardada no ficheiro /etc/shadow.

Como um usuário regular, você não tem acesso de leitura ou escrita a este arquivo por razões de segurança, mas quando você muda sua senha, você precisa ter a permissão de escrita para este arquivo. Isto significa que o programa passwd tem de lhe dar permissões adicionais para que possa escrever no ficheiro /etc/shadow.

permissões adicionais são dadas aos programas através de um mecanismo conhecido como o ID do Usuário Set (SUID) e Bits de ID do Grupo Set (SGID).,

Quando executa um programa que tem o bit SUID activo, herda as permissões do dono do programa. Os programas que não têm o conjunto de bits do SUID são executados com as permissões do utilizador que iniciou o programa.este é também o caso da SGID. Normalmente, os programas executam com as permissões do seu grupo, mas em vez disso o seu grupo será alterado apenas para este programa para o dono do grupo do programa.

os bits SUID e SGID aparecerão como a letra “s” se a permissão estiver disponível., O bit de SUID “s” será localizado nos bits de permissão onde a permissão de execução dos proprietários normalmente reside.

Por exemplo, o comando −

$ ls -l /usr/bin/passwd-r-sr-xr-x 1 root bin 19031 Feb 7 13:47 /usr/bin/passwd*$

mostra que o bit SUID está definido e que o comando é propriedade do root. Uma letra maiúscula S na posição de execução em vez de uma minúscula S indica que o bit de execução não está definido.,

Se o sticky bit é ativado no diretório, os arquivos só pode ser removido se você for um dos seguintes usuários

  • O proprietário do sticky directory
  • O dono do arquivo a ser removido
  • super usuário, raiz

Para definir o SUID e SGID bits para qualquer diretório tente o seguinte comando

$ chmod ug+s dirname$ ls -ldrwsr-sr-x 2 root root 4096 Jun 19 06:45 dirname$
Anúncios