Abordagens para impedir que o usuário exclua a pasta inicial

6

Acho que impedir que a exclusão da pasta inicial seja uma boa ideia. Então eu procuro possíveis abordagens para fazer isso. Eu é o que eu acho:

  1. Use chattr +i /home/user - mesmo raiz não pode adicionar / excluir / renomear a pasta usuário e todos os filhos diretos em usuário - bons e ruins.
  2. Altere o proprietário do diretório de usuários para raiz e defina o bit pegajoso. Adicione o arquivo .keep e mude seu dono para root também:

    chown root:user /home/user
    chmod 1775 /home/user
    chown root /home/user/.keep 
    

    root pode deletar / home / user , o usuário não pode. Mas o usuário pode livremente adicionar / remover / renomear arquivos em seu diretório

  3. Use chattr +a /home/user - mesmo que a primeira abordagem, mas o usuário pode adicionar arquivos.

Acho que chattr +a no diretório inicial: chattr +a /home é a melhor maneira:

  1. Podemos criar novas pastas base para outros usuários sem problemas.
  2. Podemos editar livremente os arquivos em / home / user
  3. Não podemos acidentalmente sudo rm -rf /home/user

Na verdade, a pergunta: quais são as armadilhas dessa abordagem?

    
por IRus 09.12.2014 / 08:45

1 resposta

7

Para remover um diretório, você precisa de uma permissão write sobre seu pai. O que significa que, enquanto usuário não puder gravar em /home , ele não poderá remover seu próprio diretório.

$ chown root:root /home
$ chmod 0755 /home

$ chown user:user /home/user
$ chmod 0750 /home/user

Com essas permissões, o root é o único usuário que pode manipular diretórios imediatamente abaixo de /home . Esta configuração é realmente muito comum em sistemas Linux, já que eles são multiusuários; no entanto, tenho visto configurações do Ubuntu em que /home pertencia ao primeiro usuário (geralmente ID 1000). Enquanto o primeiro usuário do Ubuntu geralmente é um sudoer (significando que ele poderia deletar tudo usando sudo ), eu não acho que seja uma boa prática dar /home para ninguém além do root.

Quando se trata de chattr , acredito que isso seria um exagero. Você está enfrentando um problema de permissões, não há necessidade de outros atributos de arquivo.

    
por 09.12.2014 / 08:49

Tags