Bagaimana cara melakukan backup terenkripsi seperti rsync?

38

Saya ingin menyimpan cadangan data saya di server jauh, tetapi tidak pernah ingin server cadangan melihat data yang tidak dienkripsi. Mengedit satu file dan mencadangkan tidak akan menghasilkan semua yang dienkripsi dan dikirim lagi. Server jarak jauh sebaiknya tidak mengetahui struktur direktori (dan terutama bukan nama direktori).

Apakah ada solusi seperti itu?

intuisi
sumber
Lihatlah solusi EncFS ini di serverfault: serverfault.com/a/268915/185896
Mark K Cowan

Jawaban:

25

Hal terbaik di sekitar adalah Duplicity . Satu-satunya kekurangan adalah tidak menangani hardlink.

Solusi lain adalah Tartarus , yang dapat disalurkan melalui GPG dan FTP / SSH langsung ke server cadangan. Itu tambahan.

Berikut adalah instruksi Tartarus, dalam bahasa Jerman .

Pistol
sumber
(Sunting 2013) Ditemukan di github: github.com/wertarbyte/tartarus ; itu adalah GPLv3; Saya akan memeriksa apakah hari ini masih sekeren tahun 2011;)
Cerber
2019 di sini. Tartarus tidak menua dengan baik. bermuka dua telah matang, tetapi pengembangan masih terlihat seperti di-host di situs geocities
jnovack
9

Saya pikir Anda akan menyukai rsyncrypto .

Gunakan rsyncrypto untuk mengenkripsi file dari direktori plaintext Anda ke direktori terenkripsi Anda, dan mendekripsi file dari direktori terenkripsi dan direktori plaintext Anda, menggunakan kunci yang Anda simpan secara lokal.

Gunakan rsync untuk menyinkronkan antara direktori terenkripsi Anda dan host jarak jauh.

Implementasi rsyncrypto yang dapat Anda unduh sekarang dari Sourceforge tidak hanya menangani perubahan dalam byte, tetapi juga penyisipan dan penghapusan.

Dengan rsyncrypto, semua kunci enkripsi tidak pernah meninggalkan komputer lokal.

"Server jarak jauh sebaiknya tidak tahu struktur direktori"

Dalam hal ini, Anda ingin menggunakan --name-encrypt=mapopsi tersebut. Itu membuat setiap nama file terenkripsi adalah string acak karakter, dan secara default semua nama file yang rusak disimpan dalam satu direktori. Nama file dan nama folder yang sebenarnya disimpan dalam file (terenkripsi) bernama "filemap".

Terkait: "Apakah ada sistem kontrol versi terenkripsi?"

David Cary
sumber
1

Dalam beberapa tahun terakhir, Rclone telah dikembangkan. Moto-nya adalah "rsync untuk penyimpanan cloud" tetapi melampaui hal-hal seperti S3 / Azure / Google / dll. penyedia penyimpanan cloud, juga mendukung sinkronisasi antara target lokal dan SSH / SFTP.

Apa pun "jarak jauh" yang Anda konfigurasi, Anda juga dapat menambahkan pembungkus crypt di sekitarnya. Ini bertindak sebagai remote asli, tetapi isi semua file Anda (dan opsional nama file itu sendiri) dienkripsi di sisi klien. Algoritma ini didokumentasikan, dan ini merupakan proses yang umumnya mulus dalam pengalaman saya sejauh ini.

natevw
sumber
0

tarsnap melakukan itu, tetapi Anda tidak mengontrol server jauh, tujuan ini hanya tersedia sebagai layanan (berbayar). Namun itu menjawab kebutuhan Anda.

Bruno Rohée
sumber
0

Anda dapat menggunakan ENFs dalam mode "terbalik". Ini memberi Anda "tampilan" terenkripsi dari folder lokal. Kemudian Anda rsync tampilan terenkripsi ini bukan data tidak terenkripsi. Ini memberi Anda semua keuntungan rsync tanpa perlu memiliki salinan data Anda yang dienkripsi.

Michael Wyraz
sumber