Qual é a maneira correta de ter um usuário 'backup' capaz de ler tudo para criar backups com o rsnapshot?

5

Gostaria de usar o rsnapshot para fazer backup do meu computador local e de duas máquinas remotas em um dispositivo de armazenamento portátil. Meu plano era usar rsnaphot na máquina local, criar um usuário backup nas máquinas remotas e permitir que minha raiz local acessasse a conta backup via chaves públicas ssh. Eu não queria ativar o login de raiz, pensei que isso poderia ser um recurso de segurança.

Então o problema começa: O usuário de backup remoto deve ser capaz de ler o máximo possível. Como posso fazer isso? Eu poderia adicionar este usuário a todos os grupos existentes, assim ele poderá ler todos os arquivos legíveis por grupos. Mas dessa forma, esse usuário também poderia gravar, excluir ... esses arquivos. Ou eu poderia mudar o grupo de todos os arquivos para backup ou algo assim, mas é claro que isso seria muito invasivo e, por sinal, muito insano.

Copiar a chave pública da minha raiz local para a conta raiz remota e ativar o login root seria a maneira mais fácil, hein? Devo fazer isso?

Como isso é feito corretamente?

    
por wal-o-mat 10.01.2013 / 19:23

1 resposta

0

link (Web Archive) me ajudou muito. Acabei usando root nas máquinas remotas, e também na minha máquina local (via sudo ).

A idéia é ter várias chaves e restringir as chaves a certos comandos. Por exemplo, eu configurei meu host remoto de uma maneira que não permite root login, mas permite executar um determinado comando (no meu caso eu acho que é rsync, eu tenho que admitir que eu usei o script validate-rsync como sugerido no documento vinculado sem pensar muito) se autenticado com chave pública. Então, mesmo que alguém tivesse acesso à minha conta root local, o não poderia logar diretamente (sim, ele talvez pudesse rsyncar arquivos corrompidos e outros, também corromper o allowed_keys e assim por diante).

No momento, acho que esse é o melhor compromisso entre usabilidade e segurança.

    
por 13.01.2013 / 13:04

Tags