Como posso permitir que usuários arbitrários editem arquivos na subárvore / opt?

0

Eu sou usuário 'alguém'. Eu tenho um ecossistema típico de "Web blob" (essencialmente uma sub-árvore FS começando no diretório "htdocs" típico do Apache).

Seus arquivos são de propriedade 'root' e agrupados em 'daemon', para que o Apache leia e / ou execute, enquanto 'root' também pode gravar para eles (eles vivem em '/ opt', normalmente preenchidos por scripts ou "instaladores" invocados como super).

Como 'alguém', eu quero criar um repositório git ali mesmo (em "htdocs"), para rastrear mudanças de configuração, etc, mas eu não quero rodar 'git' como super (eu tento evitar rodar coisas como super sempre que possível). Eu não quero chown / chgrp os arquivos para o meu nome de usuário, porque os usuários arbitrários não devem estar mexendo em '/ opt / ...', certo?

Então eu pensei - por que eu não me adiciono ao grupo 'daemon', e habilito a gravação em grupo nos arquivos? Isso não é um pouco mais limpo? Mas talvez não seja prudente tornar um usuário comum parte do grupo 'daemon', ou talvez não seja sábio tornar os arquivos agrupados 'daemon' graváveis - eu ainda não sei por quê.

Existe uma maneira recomendada de dar acesso de gravação a 'alguém' a coisas que vivem em '/ opt', de propriedade 'root', e mantê-las somente leitura para coisas como Apache no modo daemon, sem recorrer a ACLs? Eu não penso assim, mas eu não sou um homem inteligente. :-D

(Esta questão está relacionada, mas não esclareceu para mim: Permissões do usuário: daemon e usuário ).

    
por bernz 12.02.2016 / 17:12

1 resposta

0

O mais próximo que eu percebi foi mover o conteúdo de "htdocs" para outro lugar (neste caso, já que 'alguém' é o único editor pretendido do site, eu poderia estacionar as guloseimas em p.ex. '/ home / someone / some_website -htdocs ') e, em seguida, crie um link simbólico do local original apontando para os arquivos reais. Então eu posso re-possuir os arquivos para 'alguém' para fornecer acesso de escrita, e tudo mais permanece o mesmo (o Apache ainda pode ler / ex através do 'daemon' de grupo).

Supondo que faça sentido, se eu quisesse estender a edição para vários usuários, talvez eu criasse um grupo e um usuário 'web', mova o "blob" para algum lugar em '/ home / web / ... ', link para lá, em seguida, adicione' daemon ',' someone 'e quaisquer outros usuários para agrupar' web 'e re-mode os arquivos para serem graváveis em grupo.

Esse nível de controle provavelmente é um pouco umstaendlich , mas uma resposta melhor provavelmente me ensinará (e a outros que acham essa pergunta) muito sobre o gerenciamento de permissões.

    
por 12.02.2016 / 17:12