Como fazer um usuário não-root usar o chown para qualquer arquivo de grupo de usuários?

0

Gostaria de tornar um usuário super poderoso, com quase todos os direitos de root, mas incapaz de tocar no usuário root (para alterar a senha da raiz).

Meu objetivo é o usuário "B" gerenciar meu servidor web. O problema é que o usuário B precisa ser capaz de executar os comandos chown e chmod em alguns arquivos pertencentes a outros usuários.

Eu tentei colocar B no grupo raiz ou usar visudo, mas não é suficiente.

Estou trabalhando em um sistema Centos 6.

Se algum corpo tiver ideias!

    
por Kent Pawar 05.12.2012 / 04:11

3 respostas

3

A melhor opção é usar um arquivo / etc / sudoers configurado apropriadamente.

Se você quiser que bob possa alterar as permissões e os proprietários nos arquivos dos usuários fred , joe e sara , coloque isso no arquivo sudoers. Com essa linha, bob precisará usar, e. sudo -u fred chmod ... para alterar as permissões nos arquivos de fred .

Runas_Alias  USERS = fred, joe, sara
bob          ALL = (USERS): /bin/chmod, /bin/chown
    
por 05.12.2012 / 04:30
0

Eles devem conseguir gerenciar o conteúdo do servidor da Web sem chown . Você pode querer adicioná-los ao mesmo grupo que o servidor web é executado como. Então chown o conteúdo para o usuário desejado. Isso ajuda a definir o grupo sticky bit no diretório de conteúdo de nível superior.

Geralmente, é melhor se o servidor web NÃO puder gravar os diretórios de conteúdo. A única exceção é o cache e os diretórios de upload usados pelo servidor da web.

Outra abordagem que utilizei é ter uma tarefa agendada regularmente que atualiza o conteúdo de um repositório de controle de versão. Isso funciona bem quando vários usuários estão atualizando o conteúdo. Dependendo do software de controle de versão, você pode manipular chmod no check-in ou após o check-out. Consulte Qual sistema de controle de versão pode gerenciar todos os aspectos? para algumas ideias.

    
por 05.12.2012 / 04:30
0

Idealmente, ninguém iria querer dar privilégios de root aos usuários não-root. O que exatamente você está tentando alcançar aqui? Por que o usuário "B" precisa alterar a propriedade e privs desses arquivos pertencentes a outros usuários?

Bem, se isso é tudo o que você deseja alcançar, por que não permitir acesso de leitura a esses arquivos e ter o usuário "B", basta copiá-los para outro local. Isso tornará o usuário "B" o proprietário dos arquivos e também permitirá a alteração dos privilégios.

Outra alternativa é usar sudo para que eles possam executar comandos como root.

    
por 05.12.2012 / 04:21