Problema de permissão de script de backup

3

Eu tenho um servidor com um usuário chamado deploy-user e escrevi um script de backup para fazer backup de vários sites associados a esse usuário. No entanto, um dos sites que estou tentando fazer backup tem um diretório /home/usera/web/www.example.com/some/random_dir é de propriedade de apache-data-user .

Quais permissões eu daria para o deploy-user fazer o backup desse diretório? As opções que conheço são:

  • Executando o script como root , o que realmente não quero fazer.
  • Adicionando apache-data-user e deploy-user ao mesmo grupo. Mas então apache-data-user terá muitas permissões.

Alguém tem uma sugestão da melhor maneira de fazer o backup deste diretório?

    
por Jamie 24.01.2011 / 17:52

4 respostas

1

encontre o grupo de usuários padrão do apache em / etc / groups

e adicione o usuário de implantação a esse grupo

    
por 24.01.2011 / 19:57
0

Se você não quiser colocar o usuário de implantação e o usuário de dados do apache no mesmo grupo, ACL combina melhor com você.

    
por 24.01.2011 / 18:10
0

A opção 2 é definitivamente o caminho a seguir, a menos que você queira usar o ACL. Observe que esse grupo provavelmente precisará apenas de permissões de leitura para o diretório ao qual você está se referindo.

Outra opção seria usar o sudo para dar ao usuário de deploy alguns direitos muito restritos para executar apenas operações de backup como root.

    
por 24.01.2011 / 18:32
0

Se você tiver as listas de controle de acesso ativadas, conceda a deploy-user o direito de ler /home/usera/web/www.example.com/some/random_dir e seu conteúdo. Para ativar as ACLs, talvez seja necessário adicionar a opção acl à entrada do sistema de arquivos em /etc/fstab e instalar o pacote acl da sua distribuição.

No Linux, os comandos a seguir dão a deploy-user o direito de ler e percorrer toda a hierarquia com base em /home/usera/web :

setfacl -d -m user:deploy-user:rx -R /home/usera/web
setfacl -m user:deploy-user:rx -R /home/usera/web
    
por 24.01.2011 / 21:49