Jak zamontować zaszyfrowany katalog / home na innym komputerze Ubuntu?

37

Zrobiłem coś trochę dziwnego. Zainstalowałem Ubuntu 12.04 bezpośrednio na pendrivie USB, szyfrując katalog / home zgodnie z opcją podczas instalacji. System plików to btrfs, jak sądzę.

Teraz włożyłem to do mojego komputera z systemem Ubuntu i chciałbym skopiować plik na pamięć USB. Jak mogę zainstalować zaszyfrowany katalog domowy, aby móc do niego kopiować pliki?

Naftuli Kay
źródło

Odpowiedzi:

36

Aby uzyskać dostęp do danych na patyku i skopiować na niego pliki, musisz zamontować eCryptfs. Wymaga to kilku kroków:

Najpierw należy włożyć kij. Jeśli Ubuntu nie zamontuje go automatycznie (zwykle tak jest), powinieneś go zamontować.

Teraz powinieneś znaleźć katalog o nazwie .Private. Jeśli wykonałeś instalację domyślną, ten katalog powinien siedzieć /media/DISK/home/.ecryptfs/USERNAME/.Private. W tym przykładzie DISKznajduje się katalog, w którym zamontowano pamięć USB, i USERNAMEnazwa użytkownika wprowadzonego podczas instalacji. Jeśli nie możesz go znaleźć, otwórz terminal i wejdź

sudo find /media -type d -name .Private

Zakładam w następujących krokach, że katalog jest w /media/DISK/home/.ecryptfs/USERNAME/.Private.

Potrzebujesz hasła montowania . To różni się od hasła logowania. Wpisz następujące polecenie w terminalu:

ecryptfs-unwrap-passphrase /media/DISK/home/.ecryptfs/USERNAME/.ecryptfs/wrapped-passphrase

Musisz podać hasło logowania z instalacji USB-Ubuntu ( nie jest to zwykłe hasło). Polecenie wyświetla hasło. Zapisz to lub skopiuj do pliku.

Hasło umożliwia odblokowanie katalogu. Musisz to zrobić w dwóch krokach:

> sudo ecryptfs-add-passphrase --fnek
Inserted auth tok with sig [123456789abcdef0] into the user session keyring
> sudo mount -t ecryptfs /media/DISK/home/.ecryptfs/USERNAME/.Private /media/myUSB

Pierwsze polecenie dodaje twoje hasło do breloka jądra, a drugie próbuje zamontować twoje hasło do .Privatekatalogu /media/myUSB. Jeśli latte nie istnieje, musisz go najpierw utworzyć:

sudo mkdir /media/myUSB

mountPolecenie zapyta ponownie o hasło logowania . Następnie poprosi o kilka rzeczy.

  • Zaakceptuj domyślne wartości rozmiaru szyfru i klucza ( aesi 16).
  • Wpisz nprzejście w postaci zwykłego tekstu.
  • Wpisz yszyfrowanie nazwy pliku.
  • Ostatnią rzeczą jest FileName Encryption Key (FNEK). Spójrz na wynik właśnie wprowadzonego ecryptfs-add-passphrase --fnekpolecenia. Są dwie linie zaczynające się od Inserted auth tok …. Wstaw wartość w nawiasach kwadratowych drugiego wyjścia ( 123456789abcdef0).

Teraz możesz uzyskiwać dostęp do plików /media/myUSBi kopiować zi do katalogu lub podkatalogów.

Duża część mojego opisu pochodzi z „ Live CD metoda otwierania zaszyfrowanego katalogu domowego ”.

qbi
źródło
4
Dzięki. Przykuły mnie trzy rzeczy, które mogą pomóc innym: 1) Potrzebowałem sudo ecryptfs-add-passphrase --fnek, zwróć uwagę na sudo 2) Potrzebuję ecryptfs-add-passphrasenieopakowanego wyrażenia heksadecymalnego, ale mountpobiera hasło „login” 3) Potrzebowałem przerobić ecryptfs-add-passphrasepo umount
bsb
Dzięki - to jest cudowne! Rozwiązany również mój problem :) Czy istnieje sposób zmodyfikowania polecenia mount, aby zachował on także pierwotnego użytkownika (UID) i grupę?
Ossi Viljakainen
46

Możesz użyć ecryptfs-recover-private.

ecryptfs-recover-private /media/<UUID>/home/.ecryptfs/<USERNAME>/.Private

Poda hasło montowania, odblokuje zapakowane hasło i zamontuje katalog w trybie tylko do odczytu pod /tmp/jednym poleceniem. Użyj flagi, --rwaby zamontować zaszyfrowany system plików podczas odczytu i zapisu.

Możesz sprawdzić stronę podręcznika, aby uzyskać więcej informacji.

Seppo Erviälä
źródło
7
Nie jestem pewien, dlaczego nie została zaakceptowana odpowiedź. Jest O wiele szybszy.
Kai
2
@Kai Ponieważ ta odpowiedź nadeszła trzy lata później ...
mook765,
3
Jednak po uruchomieniu polecenia nalega, aby uruchomić go jakoroot
Seanny123
4
flaga ma --rwpodwójną kreskę. w przypadku pojawienia się błędu montowania (2), uruchom sudo ecryptfs-managerpierwszy i natychmiast wyjdź (4). następnie powtórz powyższą
komendę
3
Ha ha. Nie wspominając o mojej poprzedniej sugestii. Lepiej robić to, co powiedział ulkas : biegajsudo ecryptfs-manager i wybieraj, 4. Exitnie robiąc nic innego. Ma to zaskakujący efekt uboczny, sprawiający, że wszystko działa.
nobar
4

Miałem podobny problem i skończyłem tutaj. Migrowałem system na inny dysk twardy i mam tego samego użytkownika z zaszyfrowanym domem na starym i nowym systemie.

próbowałem

ecryptfs-recover-private /media/old_disk/home/my_name/.Private

ale ten katalog był w rzeczywistości dowiązaniem symbolicznym

/home/.ecryptfs/my_name/.Private/

Katalog docelowy istniał, ale wskazywał na .Private na moim nowym dysku .

Prawidłowe polecenie powinno brzmieć:

ecryptfs-recovery-private /media/old_disk/home/.ecryptfs/my_name/.Private

może ecryptfs-recovery-private powinien wyświetlić ostrzeżenie, jeśli wykryje ten wzorzec. To wygląda na zwykły błąd.

Piotr
źródło
Och, stary .. dzięki! Spędziłem na tym tyle czasu. Potem pomyślałem, że go mam, tylko po to, aby zdać sobie sprawę, że to rzeczywiście montowanie mojego nowego dysku ... Dzięki, działało to bezbłędnie.
quapka
0

Rozpakowywanie hasła nie działało. Musiałem wykonać:

ecryptfs-unwrap-passphrase /media/DISK/home/.ecryptfs/USERNAME/.ecryptfs/wrapped-passphrase 
użytkownik307400
źródło
2
Przyjęta odpowiedź została naprawiona, aby odzwierciedlić to teraz.
mwfearnley