Como fazer backup criptografado como o rsync?

38

Quero salvar um backup dos meus dados em um servidor remoto, mas nunca quero que o servidor de backup veja os dados não criptografados. A edição de um único arquivo e o backup não devem resultar na criptografia e envio de tudo. O servidor remoto preferencialmente nem deve conhecer a estrutura do diretório (e principalmente os nomes dos diretórios).

Existe essa solução?

intuído
fonte
Confira esta solução encfs sobre a serverfault: serverfault.com/a/268915/185896
Mark K Cowan

Respostas:

25

A melhor coisa ao redor é a duplicidade . A única desvantagem é que ele não lida com hardlinks.

Outra solução é o Tartarus , que pode ser canalizado através de GPG e FTP / SSH diretamente para um servidor de backup. Faz incrementais.

Aqui estão as instruções do Tártaro, em alemão .

Gunstick
fonte
( Edição de 2013) Encontrei no github: github.com/wertarbyte/tartarus ; é GPLv3; Vou verificar se ele está ainda tão fresco hoje como era em 2011;)
Cerber
2019 aqui. o tártaro não envelheceu bem. duplicidade amadureceu, mas o desenvolvimento ainda parece estar hospedado no site geocities
jnovack 9/10
9

Eu acho que você vai gostar do rsyncrypto .

Use rsyncrypto para criptografar arquivos do diretório de texto sem formatação para o diretório criptografado e descriptografar arquivos do diretório criptografado e do diretório de texto sem formatação, usando as chaves que você mantém localmente.

Use rsync para sincronizar entre o diretório criptografado e o host remoto.

A implementação rsyncrypto, que você pode baixar agora do Sourceforge, não apenas lida com alterações em bytes, mas também inserções e exclusões.

Com o rsyncrypto, todas as chaves de criptografia nunca saem do computador local.

"O servidor remoto preferencialmente nem deve conhecer a estrutura de diretórios"

Nesse caso, você desejará usar a --name-encrypt=mapopção Isso faz com que cada nome de arquivo criptografado seja uma sequência aleatória de caracteres e, por padrão, todos os nomes de arquivos desconfigurados são armazenados em um único diretório. Os nomes verdadeiros dos arquivos e das pastas são armazenados no arquivo (criptografado) denominado "mapa de arquivos".

Relacionado: "Existe um sistema de controle de versão criptografado?"

David Cary
fonte
1

Nos últimos anos, o Rclone foi desenvolvido. Seu lema é "rsync para armazenamento em nuvem", mas além de coisas como S3 / Azure / Google / etc. fornecedores de armazenamento em nuvem, ele também suporta a sincronização entre destinos locais e SSH / SFTP.

Qualquer "remoto" que você configurar, também poderá adicionar um invólucro de criptografia ao seu redor. Isso funciona como o controle remoto original, mas o conteúdo de todos os seus arquivos (e, opcionalmente, os próprios nomes dos arquivos) são criptografados no lado do cliente. O algoritmo está documentado, e tem sido um processo geralmente contínuo na minha experiência até agora.

natevw
fonte
0

O tarsnap faz isso, mas você não controla o servidor remoto, esse fim está disponível apenas como um serviço (pago). No entanto, atende às suas necessidades.

Bruno Rohée
fonte
0

Você pode usar encfs no modo "inverso". Isso fornece uma "exibição" criptografada de uma pasta local. Em seguida, você sincroniza novamente essa exibição criptografada, em vez dos dados não registrados. Isso oferece todas as vantagens do rsync sem a necessidade de uma cópia criptografada dos seus dados.

Michael Wyraz
fonte