Używając szyfrowania ext4, w jaki sposób mogę uniemożliwić dostęp do niezaszyfrowanych plików innym powłokom logowania lub użytkownikom?

2

Postępowałem zgodnie z instrukcjami, aby użyć szyfrowania ext4 tutaj:

Jak utworzyć zaszyfrowaną partycję ext4 na Ubuntu 15.04 z nowym jądrem 4.1?

Wszystko działa świetnie. Ale jeśli pliki są odszyfrowane dla użytkownika będącego właścicielem, to kiedy loguję się jako inny użytkownik, widzę zaszyfrowane pliki w sposób wyraźny. Pliki są czytelne na całym świecie, ale klucz znajduje się tylko w breloku użytkownika będącego właścicielem, więc jestem pewien, że nie powinno to być dozwolone.

Problem może być związany z buforowaniem i-węzłów. Kiedy robię:

echo 2 > /proc/sys/vm/drop_caches

Następnie pliki są ponownie niedostępne dla drugiego użytkownika. Ale gdy tylko pierwszy użytkownik uzyska dostęp do plików (z kluczem w kluczu sesji), pliki ponownie staną się widoczne dla drugiego użytkownika.

Muszę robić coś rażąco złego, ale nie jestem pewien co.

Korzystam z jądra 4.4.0-33-generic, używając wersji wstępnej Yakkety Yak (Ubuntu 16.10).

tksfz
źródło
Witamy w Ask Ubuntu! «Coś rażąco nie tak» Czy to oznacza, że ​​pozwalasz użytkownikom czytać katalog domowy?
Andrea Lazzarotto,
Ze względu na pytanie, tak, załóżmy, że pliki są czytelne na całym świecie. (Ostatecznie chcę spróbować wyodrębnić klucze szyfrujące do konkretnych powłok logowania lub procesów dla tego samego użytkownika, ale nie musimy się teraz do tego
włączać
Wciąż nie udaje mi się to przy aktualizacji do jądra 4.7.0-rc6.
tksfz

Odpowiedzi:

1

Potwierdziłem z Tedem Ts'o (jednym z głównych autorów szyfrowania ext4), że nie jest zaprojektowany tak, aby działał tak, jak myślałem. Nie ma na celu zapewnienia izolacji na poziomie procesu odszyfrowanej treści, na którą liczyłem. Nadal należy stosować zwykłe ograniczenia dostępu (własność pliku i uprawnienia), aby uniemożliwić innym użytkownikom dostęp do plików.

tksfz
źródło