Szukam sposobu na wdrożenie bezpieczniejszego sposobu wykonywania kopii zapasowej poza siedzibą, która również ochroniłaby moje dane przed sytuacją, w której złośliwy haker uzyskał dostęp do roota na moim serwerze. Chociaż szansa na takie zdarzenie jest mniejsza niż w przypadku innych rodzajów ryzyka, jeśli SSH i hasło są odpowiednio skonfigurowane, a system jest odpowiednio aktualny, ilość szkód, które można na stałe wyrządzić, jest naprawdę duża i dlatego ja chciałbym znaleźć rozwiązanie, aby to ograniczyć.
Próbowałem już dwóch sposobów tworzenia kopii zapasowych poza siedzibą:
prosty montowany do roota webdav (i skonfigurowany w fstab), na który kopiowane są dane. Problem : tak naprawdę nie jest to kopia zapasowa poza siedzibą, ponieważ połączenie - a ponadto dostęp - do lokalizacji poza siedzibą jest stale otwarte jako folder w systemie plików. Jest to wystarczająca ochrona przed wieloma rodzajami ataków, jeśli mount ma ograniczone uprawnienia dostępu (dostęp tylko do odczytu root), ale nie chroni przed złośliwą osobą z dostępem root.
Kopia zapasowa Borg przez SSH z uwierzytelnianiem klucza. Problem : połączenie z tym serwerem zewnętrznym może być wykonane za pomocą klucza przechowywanego na hoście, jeśli złośliwy użytkownik ma dostęp root do hosta.
Jako rozwiązanie myślę o tych potencjalnych sposobach, ale nie wiem jak iz czym:
- Kopie zapasowe można zapisywać lub dołączać tylko do miejsca docelowego, ale nie można ich usuwać.
- Korzystanie z oprogramowania do tworzenia kopii zapasowych, które obsługuje kopie zapasowe poza siedzibą i nie obsługuje masowego usuwania kopii zapasowych poza siedzibą od pierwszego hosta.
Rozwiązania, które nie są tak naprawdę interesujące w mojej sytuacji:
- Dodatkowe zadanie tworzenia kopii zapasowej na hoście zewnętrznym, które przenosi je do lokalizacji niedostępnej dla pierwszego hosta (z powodu ograniczeń technicznych).
Czy ktoś może udzielić porady, jak wdrożyć właściwą kopię zapasową poza siedzibą dla mojej sprawy?
źródło
Odpowiedzi:
Wszystkie sugestie mają obecnie jedną wspólną cechę: źródło kopii zapasowej wykonuje kopię zapasową i ma dostęp do miejsca docelowego kopii zapasowej. Niezależnie od tego, czy montujesz lokalizację, czy używasz narzędzi takich jak SSH lub rsync, system źródłowy w jakiś sposób ma dostęp do kopii zapasowej. Dlatego kompromis na serwerze może również narazić na szwank kopie zapasowe.
Co jeśli rozwiązanie do tworzenia kopii zapasowych ma dostęp do serwera? System tworzenia kopii zapasowych może wykonywać swoje zadania z dostępem tylko do odczytu , więc wszelkie kompromisy w systemie tworzenia kopii zapasowych prawdopodobnie nie zagroziłyby serwerowi. Również system tworzenia kopii zapasowych może być dedykowany wyłącznie do tego celu, dzięki czemu zawartość kopii zapasowej będzie jedynym wektorem ataku. Byłoby to bardzo mało prawdopodobne i wymagałoby naprawdę wyrafinowanego ataku.
Aby uniknąć zastąpienia kopii zapasowych sfałszowaną lub uszkodzoną zawartością, wykonaj przyrostowe kopie zapasowe, które pozwalają przywrócić dowolny poprzedni stan w zdefiniowanym okresie przywracania.
źródło
Niezmienne przechowywanie
Jedną dobrą opcją jest uczynienie z kopii zapasowej niezmiennego lub przynajmniej zapewnienie niezawodnej wersji, która zapewnia efektywną niezmienność. Mówiąc jasno: niezmienny oznacza niemożność zmiany lub trwałości.
Istnieje wiele usług, które mogą to dla Ciebie zrobić. AWS S3, BackBlaze B2 i podejrzewam, że Azure i Google oferują podobną usługę. Prawdopodobnie możesz skonfigurować serwer, aby to zrobić, ale nie jestem pewien, jak to zrobić.
Gdy masz repozytorium niezmienne / kontrolowane wersją, możesz przywrócić kopię zapasową w dowolnym momencie, więc jeśli twój komputer jest zagrożony, możesz przywrócić ją w dowolnym momencie.
* AWS S3 **
Najbardziej znam AWS S3. S3 zapewnia wersjonowaną, szyfrowaną pamięć masową o wysokim poziomie trwałości.
S3 obsługuje wersjonowanie, co zapewnia efektywną niezmienność. Możesz użyć reguł cyklu życia, aby usunąć starą wersję plików po upływie określonego czasu. Możesz także archiwizować wersje do chłodni (archiwum lodowców), które kosztuje około 1 USD / TB / miesiąc.
Możesz użyć inteligentnej klasy warstw pamięci, aby obniżyć koszty. Wybieram użycie reguły cyklu życia, aby przenieść wszystkie dane statyczne do rzadkiej klasy dostępu, która jest trwała i umiarkowana (gorąca) wydajność, ale nie ma skalowalności ani wydajności standardu S3.
S3 używa IAM (zarządzanie dostępem do tożsamości, tj. Zarządzanie użytkownikami) użytkowników i zasad. Zapewnia to bardzo szczegółową kontrolę tego, co oprogramowanie do tworzenia kopii zapasowych może zrobić z pamięcią. Możesz udzielić użytkownikowi kopii zapasowej pozwolenia na przesyłanie, ale odmówić aktualizacji i usunięcia. Możesz także wymagać uwierzytelnienia wieloskładnikowego, aby usunąć pliki, a nawet zapewnić blokadę obiektu, aby uniemożliwić usunięcie plików .
Sugerowane oprogramowanie
Tworzę przyrostowe kopie zapasowe za pomocą Restic . Restic przesyła nowe pliki do lokalizacji przechowywania. Wierzę (ale mogę się mylić), że tworzy nowe pliki, ale ogólnie rzecz biorąc, nie aktualizuje ani nie usuwa żadnych plików.
Borg to kolejna opcja. Kiedyś korzystałem z Borga, ale odkryłem, że dzięki moim umiarkowanym rozmiarom kopii zapasowych wynoszącym setki MB skutecznie przesyłałem wszystkie moje dane każdego dnia z EC2 do S3. Dla mnie nie jest to przyrostowe, więc przestałem go używać. Znalazłem dokumentację na ten temat, ale nie mam linku.
Istnieją dziesiątki oprogramowania, które można przesłać do pamięci w chmurze.
Przechowywanie chronione
W przypadku niektórych programów do tworzenia kopii zapasowych możesz spróbować zezwolić użytkownikowi IAM na pisanie nowych plików, ale nie na aktualizację istniejących. To ograniczenie jest łatwe dzięki AWS IAM, ale zgodnie z komentarzem poniżej Restic nie będzie działał z tymi uprawnieniami. Możesz także wymagać uwierzytelniania wieloskładnikowego do usuwania plików z S3.
Możesz mieć innego użytkownika IAM, uruchomić z powiedzmy komputera, który okresowo czyści archiwum, odrzucając wersje zgodnie z ustawionymi zasadami.
źródło
Borg Backup obsługuje zdalne repozytoria tylko z dołączaniem . Jakikolwiek kompromis podczas tworzenia kopii zapasowej serwera może skutkować jedynie tworzeniem nowych kopii zapasowych, a nie nadpisywaniem tylko starych.
źródło
Podstawowym problemem jest to, że jeśli możesz zdalnie uzyskać dostęp do swoich kopii zapasowych, haker również może .
Należy pokonać ograniczenia techniczne.
Napędy taśmowe zapewniają bezpieczną, zewnętrzną ochronę przed wszelkiego rodzaju katastrofami - w tym hakerami - od prawie 70 lat.
źródło
Możesz korzystać z usług pamięci masowej, takich jak AWS S3 (lub prawdopodobnie odpowiednik Google lub Azure), w których możesz nadać swojemu rootowi uprawnienia PUT do swojego segmentu, ale nie uprawnienia DELETE. W ten sposób możesz użyć modelu wypychania, a atakujący nie będzie mógł usunąć kopii zapasowej.
Istnieją dodatkowe środki bezpieczeństwa, które można podjąć przy użyciu AWS, takie jak wymaganie od MFA wykonania USUŃ w wiadrze, ale zezwalają na PUT i GET bez MFA. W ten sposób możesz zarówno wykonać kopię zapasową danych, jak i odzyskać je, aby przywrócić swoje usługi bez korzystania z urządzenia MFA, co może być przydatne w skrajnym (i prawdopodobnie zbyt niejasnym, by nawet wspomnieć) przypadku, w którym dostęp do urządzenia MFA może to zagrozić.
Poza tym komentarz poza zakresem może okazać się interesujący / przydatny, istnieje kilka sposobów skonfigurowania S3 i podobnych usług do automatycznego przełączania awaryjnego w przypadku, gdy główne źródło danych jest offline.
źródło
Możesz użyć polecenia Option w uprawnionych kluczach. Naprawiono polecenie dozwolone zdalnie.
jak dodawać polecenia w ssh klucze_autoryzowane
Nawet jeśli atakujący odzyska katalog główny logowania, nie będzie w stanie zrobić nic innego niż zdefiniowane polecenie.
źródło
Techniką, którą można skonfigurować, jest użycie synchronizacji między serwerem a zdalnym serwerem kopii zapasowych oraz umożliwienie zdalnemu serwerowi kopii zapasowych robienia migawek lub czegokolwiek na jego końcu, aby po stronie serwera kasowania nie nastąpiło skasowanie poza siedzibą.
źródło