Backups Remotos Seguros Usando Duplicidade

2

A recente retirada de espaços de código me fez pensar processos de backup off-site (que atualmente executo manualmente com a entrada de senha). Eu tenho lido tutoriais mostrando como automatizar os backups por meio da duplicidade. Estes tendem a girar em torno de usar uma chave SSH para automatizar o processo de autenticação para o servidor de backup.

No entanto, isso parece cheio de buracos para mim. Se o servidor que está sendo submetido a backup estiver comprometido ao ponto em que o usuário mal-intencionado obteve acesso, ele poderá fazer login automaticamente no servidor de backup e remover os backups. Supondo que o administrador usou /usr/bin/nologin no arquivo /etc/passwd para o usuário de backup (não tenho idéia de quanto isso pode ser invocado ou se impediria que a duplicidade funcionasse remotamente de qualquer maneira), o usuário mal-intencionado ainda poderia ter duplicidade para limpar os backups usando o comando duplicity remove-older-than [time now] .

É a única solução segura para enviar os arquivos para o servidor de backup usando rsync sobre ssh e ter um "usuário mestre" no servidor de backup para executar backups iterativos locais de todas as contas de usuário em sua própria área de armazenamento (por exemplo, somente permissões para seus próprios arquivos, mas tem permissão para ler todos os outros arquivos de contas)? Ou existe uma maneira de impedir que a duplicidade remova backups e impeça o login remoto?

    
por Programster 23.06.2014 / 21:20

2 respostas

1

A duplicidade do AFAIK não pode fazer um backup de um diretório remoto para um diretório local. Eu resolvo o problema em dois passos. No servidor de backup, faça:

  1. Execute rsync sobre ssh usando chaves ssh para sincronizar o diretório remoto com um diretório local

    rsync -avz -e ssh usuário @ remoto: / remote / diretório local_directory

  2. Execute a duplicidade de um diretório para outro. Use chaves GnuPG assimétricas, para que você não precise de senhas durante a criptografia.

    duplicidade --encrypt-key = SEU_KEYID arquivo_diretório local: // backup_diretório

ou sem criptografar o backup:

duplicity --no-encryption local_directory file://backup_directory
    
por 29.10.2014 / 21:43
0

Depois de fazer o upload do backup, você pode usar chattr +i para torná-lo imutável, para que ele não possa ser modificado ou excluído. Apenas root pode definir ou desmarcar este sinalizador.

Como alternativa, você pode chown os arquivos para outro usuário após o upload, para que a conta de backup não tenha mais acesso a eles.

    
por 31.10.2014 / 02:19