¿Cómo hacer una copia de seguridad cifrada tipo rsync?

38

Quiero guardar una copia de seguridad de mis datos en un servidor remoto, pero nunca quiero que el servidor de copias de seguridad vea los datos sin cifrar. Editar un solo archivo y hacer una copia de seguridad no debe hacer que todo se cifre y se envíe de nuevo. El servidor remoto preferiblemente ni siquiera debe conocer la estructura del directorio (y especialmente los nombres del directorio).

¿Existe tal solución?

intuido
fuente
Vea esta solución EncFS en serverfault: serverfault.com/a/268915/185896
Mark K Cowan

Respuestas:

25

Lo mejor es la duplicidad . El único inconveniente es que no maneja enlaces duros.

Otra solución es Tartarus , que se puede canalizar a través de GPG y FTP / SSH directamente a un servidor de respaldo. Hace incrementales.

Aquí están las instrucciones del Tártaro, en alemán .

Gunstick
fuente
(Edición de 2013) Lo encontré en github: github.com/wertarbyte/tartarus ; es GPLv3; Comprobaré si sigue siendo tan bueno hoy como lo fue en 2011;)
Cerber
2019 aquí. el tártaro no envejeció bien. duplicidad ha madurado, pero el desarrollo aún parece que fue alojado en el sitio de geocities
jnovack
9

Creo que te gustará rsyncrypto .

Use rsyncrypto para encriptar archivos de su directorio de texto sin formato a su directorio encriptado, y descifre archivos de su directorio encriptado y su directorio de texto sin formato, usando las claves que mantiene localmente.

Use rsync para sincronizar entre su directorio encriptado y el host remoto.

La implementación de rsyncrypto que puede descargar ahora desde Sourceforge no solo maneja los cambios en bytes, sino también las inserciones y eliminaciones.

Con rsyncrypto, todas las claves de cifrado nunca salen de la computadora local.

"El servidor remoto preferiblemente ni siquiera debe conocer la estructura del directorio"

En ese caso, querrás usar el --name-encrypt=map opción. Eso hace que cada nombre de archivo cifrado sea una cadena aleatoria de caracteres y, de forma predeterminada, todos los nombres de archivos destrozados se almacenan en un solo directorio. Los nombres verdaderos de los archivos y las carpetas se almacenan en el archivo (encriptado) llamado "mapa de archivos".

Relacionado: "¿Existe un sistema de control de versiones encriptado?"

David Cary
fuente
1

En los últimos años, Rclone ha sido desarrollado. Su lema es "rsync para almacenamiento en la nube" pero más allá de cosas como S3 / Azure / Google / etc. proveedores de almacenamiento en la nube, también admite la sincronización entre objetivos locales y SSH / SFTP.

Cualquier "control remoto" que configure, también puede agregar un contenedor de criptas a su alrededor. Esto actúa como el control remoto original, pero el contenido de todos sus archivos (y opcionalmente los nombres de los archivos en sí) se encripta en el lado del cliente. El algoritmo está documentado, y hasta ahora ha sido un proceso generalmente sin problemas en mi experiencia.

natevw
fuente
0

tarsnap hace eso, pero usted no controla el servidor remoto, este extremo solo está disponible como un servicio (pago). Sin embargo, responde a sus requisitos.

Bruno Rohée
fuente
0

Puede usar encfs en modo "inverso". Esto le brinda una "vista" encriptada de una carpeta local. Luego, sincronice esta vista cifrada en lugar de los datos no cifrados. Esto le brinda todas las ventajas de rsync sin la necesidad de tener una copia cifrada de sus datos.

Michael Wyraz
fuente