Permissões… como tornar uma pasta não visível?

0

No FreeNAS (FreeBSD) ... Eu estou tentando fazer uma pasta 'undeleteable'.

Eu fiz o login como root. Eu criei uma pasta chamada test e chmod to 700 (rwx------) . O proprietário é root , o grupo é wheel .

Em seguida, faço login como um usuário chamado john , que faz parte do grupo bbstaff - e consigo renomear e excluir a pasta test . Isso não deveria ser impossível?

Achei que as permissões w impediram a renomeação.

    
por Ze'ev 06.02.2013 / 02:24

2 respostas

3

A solução do malho para esse tipo de problema é tornar o diretório imutável. Isso deve ser feito com extremo cuidado, pois não é uma operação muito comum, portanto, se você fizer isso, é uma boa idéia deixar um arquivo para trás no diretório, com um aviso gigante:

# /some/directory/VAR_HAS_BEEN_MADE_IMMUTABLE.WARNING

Depois de fazer isso:

# chflags schg /some/directory/var

Você verá que ele não pode mais ser movido, excluído ou alterado, mesmo pelo usuário root, até que você tenha invertido o sinalizador.

Note que esta é a abordagem do BSD para o comando do linux chattr + i

link

    
por 06.02.2013 / 03:05
1

O Google oferece muitas respostas, incluindo esse , que diz "configurar o bit adesivo no diretório pai só permitirá a exclusão pelo proprietário do diretório.

chmod + t / algum / dir / ParentDir

Veja a seção de uso no link para mais informações sobre Sticky bits "

Este também advoga usando o bit pegajoso.

Em terceiro lugar, esta página diz "Quando um diretório é colocado, ele adiciona um recurso de segurança especial. impede que alguém exclua ou renomeie arquivos em um diretório, a menos que eles possuam o arquivo. ".

Parece que essa é a sua solução.

    
por 06.02.2013 / 02:28