เข้ารหัสข้อมูลสำรองระยะไกลผ่าน Rsync?


13

ฉันใช้เซิร์ฟเวอร์ CentOS ขนาดเล็กที่บ้านของฉันเพื่อสำรองข้อมูลอื่น ๆ เพื่อนของฉันที่อีกฝั่งหนึ่งของเมืองก็ใช้เซิร์ฟเวอร์ขนาดเล็กที่บ้านของเขาเพื่อจุดประสงค์เดียวกัน เราได้ใช้ความคิดในการใช้เซิร์ฟเวอร์ eachothers เพื่อทำการสำรองข้อมูลระยะไกล / นอกสถานที่

โดยทั่วไปเราแต่ละคนซื้อ hdd ภายนอกเพื่อเก็บไว้ที่บ้านพักของแต่ละคนติดกับเซิร์ฟเวอร์ของแต่ละคน จากนั้นเราจะทำการตั้งค่า rsync แต่ละครั้งเพื่อส่งข้อมูลที่เหมาะสมจากเซิร์ฟเวอร์หนึ่งไปยัง HDD ภายนอกบนเซิร์ฟเวอร์อื่น ค่อนข้างตรงไปตรงมาส่วนใหญ่

อย่างไรก็ตามสิ่งหนึ่งที่สำคัญ (อย่างน้อยสำหรับฉัน) คือการเข้ารหัสข้อมูล ฉันต้องการจัดเก็บข้อมูลของฉันในฮาร์ดดิสก์ภายนอกบนเซิร์ฟเวอร์เพื่อนของฉัน แต่ฉันไม่ต้องการให้เพื่อนของฉัน (หรือใครก็ตามที่เข้าถึงเซิร์ฟเวอร์ของเพื่อนของฉัน) เพื่อให้สามารถอ่านอะไรบน HDD ภายนอก

อะไรคือวิธีที่ดีที่สุดในการทำสิ่งนี้? คุณสามารถใช้ rsync เพื่อส่งข้อมูลไปยังไดรฟ์ hdd ที่เข้ารหัสแล้วและส่งข้อความรหัสผ่านพร้อมกับข้อมูลที่ใช้ในการเขียนเมื่อมันไปถึงเซิร์ฟเวอร์ได้หรือไม่

คำตอบ:


9

ฉันจะดูที่ Duplicity

ความซ้ำซ้อนจะสำรองข้อมูลแบบเต็มและส่วนเพิ่มและถ่ายโอนโดยใช้ Rsync, ftp, sftp, etcetc

Duplicity ใช้ GPG เพื่อเข้ารหัสข้อมูลสำรองและใช้ไฟล์ลายเซ็นต์และสิ่งอื่นใด

ฉันใช้มันเพื่อสำรองข้อมูลเซิร์ฟเวอร์อีเมลของฉันและมันก็เป็นไฟล์แบตช์ที่ง่ายเพียงไฟล์เดียว

ฟรีแน่นอนและใช้งานง่าย

man page: http://duplicity.nongnu.org/duplicity.1.html

หวังว่านี่จะช่วยได้

ลัค


ว้าวหินที่ซ้ำกันและเป็นเรื่องง่ายที่จะกลับและเรียกคืน ขอบคุณสำหรับคำใบ้!
Jake Wilson

11
## sync local unencrypted data to remote encrypted backups via rsync ..

## mount read-only encrypted virtual copy of unencrypted local data :
encfs --reverse --idle=60 -o ro ~/data/ ~/.tmp_encrypted_data/

## rsync push local encrypted virtual copy of data to remote encrypted copy :
rsync -ai --whole-file ~/.tmp_encrypted_data/ user@example.com:backup/

## unmount encrypted virtual copy of local data :
fusermount -u ~/.tmp_encrypted_data/

ว้าวฉันไม่เคยได้ยิน EncFS มาก่อน นี่คือสุดยอดเพราะฉันมี 200GB เพื่อซิงค์กับคลาวด์จากแล็ปท็อปที่มีดิสก์ 240GB
Mark K Cowan

วิธีการแก้ปัญหานี้ดูเหมือนว่าจะเหมาะสมที่สุดแล้วก็คือความแปรปรวนหรือความซ้ำซ้อน rsyncrypto มันเป็นเพียง rsync ที่เรียบง่ายของไฟล์ที่เข้ารหัส (เสมือน) เวอร์ชันของคุณ นั่นเป็นเพียงสิ่งที่จำเป็นในสถานการณ์ของฉัน ปัญหาเกี่ยวกับความซ้ำซ้อนคือการสำรองข้อมูลเต็มรูปแบบขนาดใหญ่ ปัญหาเกี่ยวกับ rsyncrypto เป็นข้อกำหนดของการคัดลอกข้อมูลของคุณ EncFS เพียงเข้ารหัสมันเมื่อ rsync อ่านข้อมูล .. : D
gamecreature

1

นี่คือสคริปต์สำรองของฉันตามคำตอบของ Thor (ยังคงใช้ได้หลายปีต่อมา!) มันเพิ่มการคัดลอกไฟล์. encfs6.xml ตามความจำเป็นสำหรับการถอดรหัสในภายหลัง (ไม่จำเป็นต้องใช้ในปี 2011?) การสร้างโฟลเดอร์ชั่วคราวสำหรับการเมาท์ที่เข้ารหัสและการอ่านรหัสผ่านการเข้ารหัสจากไฟล์ (สำหรับการสร้างสคริปต์อัตโนมัติ):

#!/bin/bash

SOURCE=/home/jortiz/Documents/
BACKUP=/media/jortiz/BAK-EXGD/backup_ALMA_E6520/Documents

SOURCE_ENC=$(mktemp -d /tmp/source_enc.XXXXXX)
echo "Created temporary folder $SOURCE_ENC ..."

## sync local unencrypted data to remote encrypted backups via rsync

# mount read-only encrypted virtual copy of unencrypted local data
encfs --extpass="cat /home/jortiz/.passbackup" --reverse --idle=60 -o ro $SOURCE $SOURCE_ENC

# rsync push local encrypted virtual copy of data to remote encrypted copy
rsync -ai --whole-file $SOURCE_ENC/ $BACKUP

# Copy encfs xml file to backup folder for later decryption
rsync -ai --whole-file $SOURCE/.encfs6.xml $BACKUP

# unmount encrypted virtual copy of local data
fusermount -u $SOURCE_ENC

echo "Removing temporary folder $SOURCE_ENC ..."
rmdir $SOURCE_ENC

ในกรณีของฉันฉันกำลังตั้งค่าการสำรองข้อมูลรายวันของแล็ปท็อปและเซิร์ฟเวอร์ขนาดเล็กของฉันไปยังไดรฟ์ USB ภายนอกที่เชื่อมต่อในเครื่อง ฉันต้องการเข้ารหัสการสำรองข้อมูลในกรณีที่ไดรฟ์หายไปหนึ่งวันพร้อมกับข้อมูลที่สำคัญ


0

วิธีการแก้ปัญหาเช่นเดียวกับที่คุณอธิบายข้างต้นต้องส่งคีย์การเข้ารหัสของคุณไปยังเครื่องของเพื่อนของคุณ หากเราถือว่าเพื่อนของคุณเป็น "เว็บไซต์ที่ไม่น่าเชื่อถือ" คุณเพียงแค่เป่าความปลอดภัยของคุณ (เขาสามารถจับกุญแจและอ่านข้อมูลของคุณ)

หากคุณต้องการให้แน่ใจว่าเพื่อนของคุณไม่สามารถอ่านข้อมูลสำรองของคุณได้คุณต้องเข้ารหัสไฟล์ก่อนที่จะส่ง (เช่นทำ tarball เข้ารหัสด้วยไฟล์gpgหรือคล้ายกันจากนั้นจึงซิงค์กลับคืน) และอย่าให้รหัสแก่เขา พิมพ์ข้อความธรรมดาเพื่อย้อนกลับสร้างคีย์)
โปรดทราบว่าการทำเช่นนี้จะส่งผลลบต่อเดลต้า (ประหยัดแบนด์วิดท์) ของการใช้ rsync: ไฟล์ที่เข้ารหัสจะเปลี่ยนไปอย่างมากในแต่ละครั้งที่คุณทำการสำรองข้อมูลดังนั้นคุณอาจคัดลอกทุกอย่างทุกครั้ง


2
นั่นคือสิ่งที่ดีเกี่ยวกับ Duplicity มันเข้ารหัสก่อนออกจากคอมพิวเตอร์ แต่มันสามารถทำการสำรองข้อมูลส่วนเพิ่มได้อย่างเต็มที่โดยการอ่านลายเซ็น / รายการการเปลี่ยนแปลงและสิ่งที่ไม่นั่นคือเหตุผลที่ฉันแนะนำให้เขา การสำรองข้อมูลครั้งแรกจะใช้เวลานาน แต่หลังจากนั้นเขาจะดีไปในขณะที่รักษาความปลอดภัยระดับดี
Luma

0

rsyncryptoได้รับการเขียนอย่างแม่นยำเพื่อจุดประสงค์นี้ ช่วยให้คุณสามารถใช้อัลกอริทึมเดลต้าคัดลอก rsync ของในขณะที่การเข้ารหัสข้อมูลของคุณในพื้นที่และการจัดเก็บ blobs เข้ารหัสจากระยะไกล

อย่างไรก็ตามโปรดทราบว่า rsyncrypto ทำให้การแลกเปลี่ยนระหว่างความปลอดภัยและประสิทธิภาพ


เมื่อดูอย่างรวดเร็วถึงวิธีการทำงานของ rsyncrypto ฉันค่อนข้างตกใจกับความคิดของใครก็ตามที่ใช้มัน ฉันต้องการที่จะเห็นความคิดเห็นของผู้เข้ารหัสที่มีชื่อเสียงเกี่ยวกับวิธีการก่อนที่ฉันจะเชื่อถือข้อมูลใด ๆ ของฉัน
womble
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.