Szukam zaszyfrowanego systemu plików dla systemu Linux, który można zamontować w trybie tylko do zapisu, co oznacza, że powinieneś być w stanie zamontować go bez podawania hasła, a jednocześnie nadal móc pisać / dołączać pliki, ale nie powinieneś być w stanie odczytać zapisane przez siebie pliki ani odczytać plików już znajdujących się w systemie plików. Dostęp do plików należy zapewnić tylko wtedy, gdy system plików jest zamontowany za pomocą hasła. Ma to na celu zapisywanie plików dziennika lub podobnych danych, które są tylko zapisywane, ale nigdy nie są modyfikowane, bez ujawnienia samych plików. Uprawnienia do plików nie pomagają tutaj, ponieważ chcę, aby dane były niedostępne, nawet gdy system jest w pełni zagrożony.
Czy coś takiego istnieje w systemie Linux? A jeśli nie, jaka byłaby najlepsza alternatywa dla tworzenia zaszyfrowanych plików dziennika?
Moje obecne obejście polega na prostym przesyłaniu danych gpg --encrypt
, co działa, ale jest bardzo kłopotliwe, ponieważ nie możesz łatwo uzyskać dostępu do systemu plików jako całości, musisz gpg --decrypt
ręcznie przesłać każdy plik .
źródło
syslog
. To oddziela generowanie wiadomości dziennika od systemu, który je przechowuje, więc aplikacje generujące wiadomość nie mają dostępu do miejsca, w którym są przechowywane. Dzienniki mogą nawet (i często znajdują się) na osobnym serwerze.Odpowiedzi:
To jest niemożliwe. Jeśli system jest w pełni zagrożony, „z definicji” jest dostępne wszystko na nim - w tym klucze szyfrowania.
Szyfrowanie jest bezużyteczne w ochronie przed naruszeniem bezpieczeństwa systemu, gdy system jest uruchomiony, JEŻELI klucze do szyfrowania / deszyfrowania danych znajdują się w tym samym systemie z zaszyfrowanymi danymi. Na przykład, jeśli masz zainstalowany system plików LUKS i ktoś uzyskuje dostęp do systemu root, możesz wyciągnąć klucze z pamięci RAM - ponieważ musi on żyć w pamięci RAM, aby odszyfrować system plików. W Twojej sytuacji, jeśli wpisujesz hasło za każdym razem, gdy szyfrujesz plik, jesteś chroniony (zakładając, że keylogger nie jest obecny w twoim systemie), jeśli nie, to jesteś w tej samej sytuacji i ktoś, kto naruszy twój system, może to znaleźć klucz i cofnij całe szyfrowanie.
Musisz wysłać dane, które chcesz chronić poza systemem + NIE zapisuj ich na nośniku pośrednim w tym systemie, jeśli absolutnie nie chcesz, aby root się do nich dostał.
rsyslog
wyraźnie obsługuje to w odniesieniu do rejestrowania i można zaszyfrować połączenie między źródłem a zlewem za pomocą OpenVPNstunnel
lub podobnego. Jestem pewien, że istnieją inne opcje transferu „w jedną stronę”.źródło
Wydaje mi się, że idziesz w złym kierunku. Jeśli chcesz plik, w którym można pisać, ale nie można go odczytać, to uprawnienia do plików są tym, czego szukasz.
Oczywiście ten plik może znajdować się w zaszyfrowanym systemie plików.
źródło
też może być przydatny. Każdy plik utworzony w ramach bieżącego procesu będzie miał tryb 0200.
źródło