Aprenda a usar o comando chattr para bloquear arquivos e diretórios

Nesta dica da semana da 4Linux, iremos aprender o comando chattr, utilizado para bloquear arquivos e diretórios, ou seja criar restrições de acesso a diretórios e arquivos.

O que é?

Antes de iniciarmos a explicação do comando, é muito importante que você tenha como base o funcionamento do comando chattr, que de fato é para assegurar a modificação ou futuras alterações do arquivo ou diretório, onde mesmo contendo permissão total mediante ao arquivo, não é possível realizar a alteração ou até mesmo deletar.

Isto é muito utilizado em arquivos do sistema, como shadow e passwd, que contém todas as informações de usuário e senhas.

Sintaxe:

# chattr [operador] [chave] [nome do arquivo]

Operadores:

O operador “+” faz com que seja atributo seja adicionado ou seja trava o arquivo ou diretório.

O operador “- “ faz com que o atributo seja removido, remove a tranca do diretório ou arquivo.

-R

Recursivamente altera os atributos de diretórios e seus conteúdos. Os links simbólicos encontrados durante opção recursiva no diretório são ignorados.

-a

Um arquivo com o atributo ‘a’ só pode ser aberto em modo incremental para escrever. Somente o superusuário pode definir ou limpar este atributo.

-i

Um arquivo com o atributo ‘i’ não pode ser modificado: ele não pode ser excluído ou renomeado, nenhum link pode ser criado para este arquivo e os dados não podem ser gravados no arquivo. Somente o superusuário pode definir ou limpar este atributo.

Vamos criar um arquivo teste com usuário privilegiado (root):

# vim teste.txt

Testando o comando chattr.

De permissão total para esse arquivo:

# chmod 777 teste.txt

Atribua a chave +i no arquivo e em seguida tente edita-lo:

# chattr +i teste.txt

Remova a chave do arquivo:

# chattr -i teste.txt

Crie novamente um novo arquivo, entretanto desta vez, iremos atribuir a chave +a:

# vim teste2.txt

Testando a opção -a do chattr

Atribua a chave +a para o arquivo teste2.txt:

# chattr +a teste2.txt

Atribua um texto para o arquivo teste2.txt:

# echo “Realizando um Append” >> teste2.txt

A principal diferença da chave “+i” para a chave “+a” é que com a chave “+a” você consegue realizar um append, ou seja, acrescentar um novo valor ao arquivo, enquanto com a chave “+i” não será possível.

CURSOSCONSULTORIACONTATO

Anterior Domine o mercado de TI com o Curso Infraestrutura de Nuvens com OpenStack
Próxima Aprenda a usar o Netcat para auditoria de segurança em Linux

About author

Você pode gostar também

DevOps

Docker: Ferramenta essencial para desenvolvedores e gestão de aplicativos

O que é o Docker O Docker é uma ferramenta de código aberto para conteinerização que agiliza a criação e a implantação de aplicativos por meio do uso de contêineres.

Infraestrutura TI

Entenda o funcionamento do pseudo filesystem /proc no Linux

O que é o “/proc” ? O “/proc” ou “procfs” é um pseudo filesystem que nos permite interagir e observar as estruturas internas do kernel Linux em formato de arquivos.

Infraestrutura TI

Tutorial: Configurando o Traefik no Docker Swarm com arquivos YAML

Neste tutorial, você aprenderá como configurar o Traefik no Docker Swarm usando arquivos YAML, uma forma fácil e eficiente de gerenciar seus aplicativos de contêineres em larga escala. Ao seguir