La cosa migliore in circolazione è la duplicità. L'unico inconveniente è che non gestisce gli hardlink.
Un'altra soluzione è Tartarus, che può essere reindirizzato tramite GPG e FTP/SSH direttamente a un server di backup. Fa incrementali.
Ecco le istruzioni del Tartaro, in tedesco.
Penso che ti piacerà rsyncrypto.
Usa rsyncrypto per crittografare i file dalla tua directory di testo in chiaro alla tua directory crittografata e decrittografare i file dalla tua directory crittografata e dalla tua directory di testo in chiaro, utilizzando chiavi che conservi localmente.
Usa rsync per eseguire la sincronizzazione tra la tua directory crittografata e l'host remoto.
L'implementazione di rsyncrypto che puoi scaricare ora da Sourceforge non solo gestisce le modifiche nei byte, ma anche gli inserimenti e le eliminazioni.
Con rsyncrypto, tutte le chiavi di crittografia non lasciano mai il computer locale.
"Il server remoto dovrebbe preferibilmente non conoscere nemmeno la struttura della directory"
In tal caso, ti consigliamo di utilizzare --name-encrypt=map
opzione.Ciò rende ogni nome di file crittografato una stringa casuale di caratteri e, per impostazione predefinita, tutti i nomi di file alterati vengono archiviati in una singola directory.I veri nomi di file e nomi di cartelle vengono archiviati nel file (crittografato) denominato "filemap".
Correlata:"Esiste un sistema di controllo della versione crittografato?"
Negli ultimi anni è stato sviluppato Rclone. Il suo motto è "rsync per l'archiviazione cloud" ma al di là di cose come S3/Azure/Google/ecc. provider di archiviazione cloud, supporta anche la sincronizzazione tra destinazioni locali e SSH/SFTP.
Qualsiasi "remoto" che configuri, puoi anche aggiungere un crypt wrapper attorno ad esso. Funziona come il telecomando originale, ma i contenuti di tutti i tuoi file (e facoltativamente i nomi dei file stessi) vengono crittografati sul lato client. L'algoritmo è documentato e finora è stato un processo generalmente fluido nella mia esperienza.