W moim domu prowadzę mały, skromny serwer CentOS, aby wykonywać kopie zapasowe itp. Mój przyjaciel po drugiej stronie miasta również prowadzi mały skromny serwer w swoim domu do podobnych celów. Myśleliśmy o tym, aby używać serwerów nawzajem do tworzenia zdalnych / zewnętrznych kopii zapasowych.
Zasadniczo każdy z nas kupiłby zewnętrzny dysk twardy do przechowywania w domach innych, połączony z serwerami innych. Następnie każda konfiguracja zaplanowała rsync, aby przepchnąć odpowiednie dane z jednego serwera na zewnętrzny dysk twardy na drugim serwerze. W większości dość proste.
Jednak ważną rzeczą (przynajmniej dla mnie) jest szyfrowanie danych. Chcę przechowywać moje dane na zewnętrznym dysku twardym na serwerze znajomych. Ale nie chcę, aby mój przyjaciel (lub ktokolwiek, kto uzyskuje dostęp do serwera mojego przyjaciela) mógł czytać zawartość zewnętrznego dysku twardego.
Jakie jest najlepsze podejście do tego? Czy możesz użyć programu rsync do wysyłania danych na zaszyfrowany dysk twardy i w jakiś sposób przekazać hasło wraz z danymi, których używa do zapisu po dotarciu do serwera?
źródło
źródło
Oto mój skrypt zapasowy oparty na odpowiedzi Thora (nadal ważny kilka lat później!). Dodaje kopiowanie pliku .encfs6.xml zgodnie z potrzebami do późniejszego odszyfrowania (niepotrzebne w 2011 roku?), Tworzenie tymczasowego folderu do szyfrowanego montowania i odczytywanie hasła szyfrowania z pliku (do automatycznego skryptowania):
W moim przypadku konfiguruję codzienną kopię zapasową laptopa i małych serwerów na zewnętrznym dysku USB podłączonym lokalnie. Chcę zaszyfrować kopię zapasową na wypadek, gdyby pewnego dnia dysk zniknął wraz z niektórymi poufnymi danymi.
źródło
Rozwiązanie takie jak opisane powyżej wymaga wysłania klucza szyfrującego na komputer znajomego. Jeśli uznamy twojego przyjaciela za „niezaufaną stronę”, właśnie wysadziłeś swoje zabezpieczenia (może on przechwycić klucz i odczytać twoje dane).
Jeśli chcesz mieć pewność, że znajomy nie może odczytać twoich kopii zapasowych, musisz zaszyfrować pliki przed ich wysłaniem (np. Zrób tarball, zaszyfruj go
gpg
lub podobnie, a następnie zsynchronizuj) i nigdy nie dawaj mu klucza (lub wystarczającej ilości zwykły tekst do inżynierii wstecznej klucza).Zauważ, że zrobienie tego neguje korzyści delta (oszczędność przepustowości) wynikające z używania rsync: Zaszyfrowany plik zmieni się zasadniczo za każdym razem, gdy tworzysz kopię zapasową, więc prawdopodobnie będziesz za każdym razem kopiował całą zawartość.
źródło
rsyncrypto został napisany właśnie w tym celu. Pozwala to wykorzystać algorytm rsync do kopiowania w trybie delta podczas lokalnego szyfrowania danych i zdalnego przechowywania zaszyfrowanych obiektów blob.
Należy jednak pamiętać, że rsyncrypto stanowi kompromis między bezpieczeństwem a wydajnością.
źródło