Gerenciar Permissões de Arquivos e Diretórios no Linux

CompTIABeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá as habilidades fundamentais para gerenciar permissões de arquivos e diretórios em um ambiente Linux. Você começará configurando um espaço de trabalho dedicado, criando um novo diretório e um arquivo de exemplo para servir como base para os exercícios. Essa abordagem prática permitirá que você exercite o controle de acesso a dados usando ferramentas essenciais de linha de comando.

Ao longo do laboratório, você usará o comando chown para alterar a propriedade de arquivos e o comando chmod para modificar as permissões de leitura, escrita e execução para diferentes usuários e grupos. Você aplicará esses conceitos primeiro a um arquivo individual e, em seguida, aprenderá como essas permissões afetam de forma única o acesso a diretórios. Ao final, você será capaz de proteger arquivos com eficiência e gerenciar o acesso de usuários em um sistema Linux.

Este é um Laboratório Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para concluir cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 98%. Ele recebeu uma taxa de avaliação positiva de 100% dos alunos.

Preparar o Espaço de Trabalho e Criar um Arquivo

Nesta etapa, você começará configurando um espaço de trabalho dedicado para este laboratório. Organizar arquivos em diretórios específicos é uma prática fundamental no Linux para manter um sistema de arquivos limpo e gerenciável. Você criará um diretório e, em seguida, um novo arquivo dentro dele, que servirá como objeto para os exercícios de gerenciamento de permissões nas etapas seguintes.

Primeiro, vamos criar um novo diretório chamado RandD (para Pesquisa e Desenvolvimento - Research and Design) dentro do seu diretório de trabalho atual, ~/project. O comando mkdir é usado para criar novos diretórios.

Execute o seguinte comando no seu terminal:

mkdir RandD

Em seguida, navegue para o diretório RandD recém-criado. O comando cd (change directory) permite que você se desloque entre diretórios no sistema de arquivos.

cd RandD

O prompt do seu terminal agora deve refletir que você está dentro do diretório ~/project/RandD.

Agora, vamos criar um arquivo vazio que representará um documento de design. O comando touch é uma maneira simples de criar um arquivo novo e vazio. Se o arquivo já existir, o touch atualiza seu carimbo de data/hora de modificação sem alterar seu conteúdo.

Crie um novo arquivo chamado design_doc.odt:

touch design_doc.odt

Para confirmar que o arquivo foi criado e inspecionar suas propriedades padrão, use o comando ls -l. Este comando lista o conteúdo do diretório atual em formato longo, fornecendo informações detalhadas como permissões, proprietário, grupo, tamanho e data de modificação.

ls -l

Você deve ver uma saída semelhante à seguinte. Observe que, por padrão, o novo arquivo pertence à sua conta de usuário (labex) e ao seu grupo primário (labex). A string de permissão -rw-rw-r-- será explicada em detalhes nas próximas etapas.

total 0
-rw-rw-r-- 1 labex labex 0 Jun 26 10:36 design_doc.odt

Você preparou com sucesso o espaço de trabalho e criou o arquivo de destino para este laboratório. Nas próximas etapas, você aprenderá como modificar sua propriedade e permissões.

Alterar a Propriedade do Arquivo com o Comando chown

Nesta etapa, você aprenderá como alterar o proprietário de um arquivo. No Linux, cada arquivo e diretório é atribuído a um proprietário (um usuário específico) e a um grupo. Essa propriedade é a base do modelo de segurança do Linux, pois ajuda a determinar quem tem o direito de ler, gravar e executar arquivos. O comando usado para alterar a propriedade é o chown.

Nosso cenário exige que o arquivo design_doc.odt seja gerenciado por um novo usuário, student1, e um novo grupo colaborativo, research. Como esse usuário e grupo ainda não existem, você deve criá-los primeiro.

Certifique-se de que ainda está no diretório ~/project/RandD. Se não estiver, use o comando cd ~/project/RandD para navegar até lá.

Primeiro, crie o grupo research usando o comando groupadd. Esta é uma operação de nível de sistema que requer privilégios administrativos, portanto, você deve usar o sudo.

sudo groupadd research

Em seguida, crie o usuário student1 com o comando useradd. A flag -m é usada para criar um diretório home para o novo usuário, o que é uma prática padrão. Isso também requer sudo.

sudo useradd -m student1

Agora que o usuário student1 e o grupo research existem, você pode alterar a propriedade do arquivo design_doc.odt. A sintaxe para o chown é chown usuário:grupo nome_do_arquivo. Você precisa do sudo para executar este comando porque está atribuindo o arquivo a outro usuário.

sudo chown student1:research design_doc.odt

Para verificar se a propriedade foi atualizada, use o comando ls -l novamente.

ls -l

A saída agora mostrará student1 como o usuário proprietário e research como o grupo proprietário.

total 0
-rw-rw-r-- 1 student1 research 0 Jun 26 10:36 design_doc.odt

Compare isso com a saída anterior. A terceira e a quarta colunas mudaram de labex labex para student1 research, confirmando que seu comando foi bem-sucedido. Você transferiu com sucesso a propriedade do documento de design.

Modificar Permissões de Arquivo com o Comando chmod

Nesta etapa, você aprenderá a controlar quem pode ler, gravar ou executar um arquivo usando o comando chmod (change mode). As permissões de arquivo são um aspecto fundamental do modelo de segurança do Linux. Você praticará a remoção de permissões para "outros" para tornar o documento mais seguro.

Primeiro, certifique-se de estar no diretório ~/project/RandD. Vamos reexaminar as permissões atuais do design_doc.odt com ls -l.

ls -l
-rw-rw-r-- 1 student1 research 0 Jun 26 10:36 design_doc.odt

A string -rw-rw-r-- representa as permissões do arquivo. Ela é dividida em três conjuntos de três caracteres para o usuário (proprietário), o grupo e outros (todos os demais).

  • rw-: O proprietário, student1, tem permissões de leitura (read) e escrita (write).
  • rw-: O grupo, research, já possui permissões de leitura (read) e escrita (write).
  • r--: Outros têm apenas permissão de leitura (read).

Como você pode ver, o grupo research já tem acesso de escrita a este documento, o que permite a colaboração. No entanto, para garantir que o documento permaneça confidencial, você deve remover todas as permissões para "outros". Você pode fazer isso usando o chmod com a notação octal (numérica), que é um método comum e eficiente.

Vamos verificar as permissões atuais mais uma vez:

ls -l

A saída confirma as permissões atuais:

-rw-rw-r-- 1 student1 research 0 Jun 26 10:36 design_doc.odt

Agora, para garantir que o documento permaneça confidencial, você deve remover todas as permissões para "outros". Você pode conseguir isso usando o chmod com notação octal (numérica).

Veja como funcionam as permissões octais:

  • r (leitura) = 4
  • w (escrita) = 2
  • x (execução) = 1

Você soma os números para as permissões desejadas em cada categoria (usuário, grupo, outros).

  • Usuário: leitura (4) + escrita (2) = 6
  • Grupo: leitura (4) + escrita (2) = 6
  • Outros: sem permissões = 0

O código de permissão resultante é 660. Vamos aplicá-lo.

sudo chmod 660 design_doc.odt

Por fim, verifique as permissões uma última vez.

ls -l

A saída confirma que "outros" agora não têm permissões (---), protegendo o documento.

-rw-rw---- 1 student1 research 0 Jun 26 10:36 design_doc.odt

Você modificou com sucesso as permissões do arquivo para permitir a colaboração em grupo, restringindo o acesso de terceiros.

Controlar Permissões de Acesso a Diretórios

Nesta etapa final, você protegerá todo o diretório RandD. Assim como os arquivos, os diretórios têm permissões que controlam o acesso. No entanto, o significado das permissões de leitura, escrita e execução é diferente para diretórios.

  • r (leitura): Permite que um usuário liste o conteúdo do diretório (ou seja, veja os nomes dos arquivos e subdiretórios internos).
  • w (escrita): Permite que um usuário crie, exclua e renomeie arquivos dentro do diretório. Esta permissão é poderosa, pois permite a modificação do conteúdo do diretório, independentemente das permissões nos próprios arquivos.
  • x (execução): Permite que um usuário entre no diretório (por exemplo, usando cd) e acesse arquivos ou subdiretórios dentro dele. Sem a permissão de execução, você não pode acessar nenhum item dentro do diretório, mesmo que tenha permissão de leitura.

Primeiro, navegue para o diretório pai, ~/project, para que possa operar no próprio diretório RandD.

cd ..

Agora, vamos inspecionar a propriedade e as permissões atuais do diretório RandD usando o comando ls -ld. A flag -d é crucial aqui; ela diz ao ls para listar informações sobre o diretório em si, não sobre seu conteúdo.

ls -ld RandD

A saída inicial será algo parecido com isto:

drwxrwxr-x 2 labex labex 28 Jun 26 10:36 RandD

Isso mostra que o proprietário (labex) tem acesso total (rwx), o grupo (labex) também tem acesso total (rwx) e outros podem apenas ler e entrar no diretório (r-x). Para tornar esta uma pasta colaborativa adequada para a equipe research, você deve primeiro alterar a propriedade de grupo do diretório para research.

sudo chown :research RandD

Em seguida, você definirá as permissões para dar ao proprietário (labex) e ao grupo (research) controle total, removendo completamente o acesso para outros. A permissão desejada é rwxrwx---, que se traduz no código octal 770. Como proprietário do diretório, você pode alterar suas permissões sem usar sudo.

chmod 770 RandD

Por fim, vamos verificar as alterações.

ls -ld RandD

A saída agora deve refletir a nova propriedade e permissões, protegendo o diretório para sua equipe.

drwxrwx--- 2 labex research 28 Jun 26 10:36 RandD

Tanto o usuário labex quanto qualquer membro do grupo research agora têm permissões totais de leitura, escrita e execução no diretório RandD, enquanto todos os outros usuários não têm acesso. Você configurou com sucesso um espaço colaborativo seguro.

Resumo

Neste laboratório, você aprendeu as etapas fundamentais para preparar um espaço de trabalho em um ambiente Linux. Isso envolveu a criação de um novo diretório usando o comando mkdir, a navegação nele com cd e a criação de um arquivo vazio com touch. Você também praticou o uso do comando ls -l para inspecionar as propriedades detalhadas do arquivo recém-criado, observando seu proprietário padrão, grupo e configurações de permissão, o que estabeleceu a base para as tarefas de gerenciamento subsequentes.

Com base nesses fundamentos, você explorou os conceitos centrais de segurança do sistema de arquivos Linux. O laboratório demonstrou como alterar a propriedade de um arquivo usando o comando chown, transferindo o controle para um usuário ou grupo diferente. Em seguida, você aprendeu a modificar as permissões de leitura, escrita e execução para o proprietário, grupo e outros usando o comando chmod. Por fim, o laboratório abordou como aplicar esses conceitos de permissão especificamente a diretórios para controlar o acesso aos arquivos contidos neles.