4 de novembro de 2011

Permissão superior ao usuário root

Neste artigo-dica vamos abordar sobre uma permissão cuja finalidade é ser superior às permissões normais (rwx) e as especiais (suid, sgid, stick bit).

Para aplicar essa permissão suprema precisamos de dois binários: chattr para alterar a permissão e lsattr para listar o diretório em questão.


Os comandos chattr e lsattr servem para incrementar segurança no arquivo ou diretório, o comando chattr usa atributos e não permissão como o chmod, esses atributos são extensões que proíbem que o arquivo seja alterado, removido e renomeado, esses atributos pode ser atribuídos para o dono do arquivo e até mesmo para o root. Abaixo será explicado a função de cada comando. 





chattr
Esse comando modifica os atributos de arquivos/diretórios Comando: chattr [opção] [atributo] [arquivo/diretório] Onde: Opções:
  • -R - modifica atributos em subdiretórios.
  • -V - Mostra detalhes sobre a modificação do atributo atributo:
  • atributos de arquivo / diretório
    + adiciona atributo
    - remove atributo
    = define o atributo igual especificado

Os atributos são os seguintes:
  • A - Não modifica a hora de acesso ao arquivo (somente em kernel 2.2)
  • a - Append Only, arquivo pode somente ser gravado em modo incrementado, ou seja, pode ser adicionado conteúdo somente no final do arquivo, não pode ser removido ou renomeado.
  • c - Permite compactação nos arquivos especificados de forma transparente.
  • d - Protege para o dump não fazer backup do arquivo.
  • i - Imutáveis. Arquivos Imutáveis não podem ser modificados, gravados, removidos, renomeados. Até mesmo o usuário root com pode máximo não pode alterar.
  • s - É chamado de apagamento seguro, quando eliminado o arquivo é zerado sem possibilidade de recuperação.
  • S - Faz a gravação imediatamente para o arquivo especificado, como sync, ex: igual aos disquetes.
  • u - É marcado como recuperável, quando apagado é salvo uma copia para permitir recuperação.


lsattr
Comando que lista os atributos atribuídos a um arquivo/diretório. Comando: lsattr [opção] [arquivo/diretório] Opções:
  • -a - Lista todos os arquivo, incluindo os ocultos.
  • -d - Lista os atributos de diretórios.
  • -R - Lista um diretório e seus subdiretórios.
  • -v - Mostra versões dos arquivos.





Vamos à prática agora. Aplique as permissões supremas, logue como root ou qualquer usuário e tente renomear, excluir ou qualquer outra ação com o arquivo e/ou diretório. Você verá como isso funciona bem.


Um bom exemplo onde isso é útil: Executar permissão suprema no /etc/resolv.conf para que o DNS nunca seja deletado/alterado.

2 comentários:

Anônimo disse...

Estou com este problema. A área de trabalho está desabilitada. A minha distro é debian. Outra coisa instalei o google-chrome e ele abriu normalmente depois de uns dias fui entrar e ele nao quis abrir de jeito nenhum.

Lucas Sabino disse...

Esse artigo é sobre permissões...

O que tem a ver com problema na área de trabalho?

Você setou permissões especiais na sua área de trabalho e por isso não consegue salvar nada, é isso?


OBrigado pela visita ao Blog