Alterar proprietário do próprio diretório

5

Estou ciente de que um usuário não raiz não pode alterar o proprietário de uma pasta para outro usuário, mesmo que o usuário seja o proprietário, a menos que ele use sudo ou tenha o recurso CAP_CHOWN .

Existe uma maneira de conceder permissões de usuário não-root específicas para alterar o proprietário de um diretório que ele possui via sudo ou algum outro comando, mas não permitir que o usuário altere arbitrariamente o proprietário de diretórios que não possui? ?

Eu tenho um servidor (rodando como o usuário "myserver" não-root) e quero que ele seja capaz de criar diretórios específicos para usuários locais, e quando é feito com um diretório, mude o dono dele para o usuário desejado.

    
por cpburnz 09.09.2013 / 21:01

1 resposta

4

sudo não tem uma maneira interna de fazer isso. A abordagem básica é escrever algum programa auxiliar que faz várias verificações (o usuário X possui esse diretório? Ele está no caminho esperado? Os bits de permissão são sãos? Etc.) e, em seguida, faz o chown .

Você então permite que o usuário X execute o helper, como root, via sudo ou permissões do sistema de arquivos (faça o helper suid root, executável apenas dois do grupo do daemon, ou até mesmo o usuário do daemon com ACLs).

O assistente, claro, precisa ser escrito com segurança em mente.

    
por 10.09.2013 / 00:27