Rozpakowywanie hasła i wstawianie do pliku kluczy sesji użytkownika nie powiodło się

15

Po wprowadzeniu poprawnego hasła w poleceniu ecryptfs-mount-privatepojawia się następujący błąd:

torben@torben-nettop:~$ sudo ecryptfs-recover-private
INFO: Searching for encrypted private directories (this might take a while)...
INFO: Found [/media/0f417b42-11a0-4539-9cae-e11ce3b289c3/home/.ecryptfs/
  torben/.Private].
Try to recover this directory? [Y/n]: y
INFO: Enter your LOGIN passphrase...
Passphrase: 
Error: Unwrapping passphrase and inserting into the user session keyring
  failed [-5]
Info: Check the system log for more information from libecryptfs
torben@torben-nettop:~$ 

Syslog ma następujące informacje:

ecryptfs-insert-wrapped-passphrase-into-keyring:  
  Incorrect wrapping key for file [/home/torben/.ecryptfs/wrapped-passphrase]  
ecryptfs-insert-wrapped-passphrase-into-keyring: Error attempting to unwrap
  passphrase from file [/home/torben/.ecryptfs/wrapped-passphrase]; rc = [-5]

-> Biorąc pod uwagę, że jestem absolutnie pewien, że wprowadzam poprawne hasło, co mogę zrobić, aby rozwiązać ten problem, aby móc odczytać zaszyfrowany folder domowy?

Niektóre tło:

  • Zainstalowałem Ubuntu 11.04 na nowym dysku i chcę skopiować mój folder domowy ze starego dysku, który jest zaszyfrowany (mam hasło).
  • Z pomocą Marco Ceppi na czacie , wykonałem wczoraj te dokładne kroki i skutecznie uzyskałem dostęp do zaszyfrowanego folderu domowego. To dowodzi, że moje hasło rzeczywiście działa.
  • Następnie rozpocząłem kopiowanie ze starego zaszyfrowanego folderu domowego do nowego niezaszyfrowanego folderu domowego i położyłem się spać. Kiedy wróciłem do komputera, zobaczyłem, że zawiesił się :( i nie zakończył kopiowania folderu.
  • Uruchomiłem ponownie komputer i usunąłem foldery tymczasowe / odzyskiwania , a następnie powtórzyłem dokładnie te same kroki, ale wtedy napotkałem błąd podany powyżej. Próbowałem tego kilka razy; zawsze ten sam wynik. Jestem absolutnie pewien, że poprawnie wpisuję hasło.
Torben Gundtofte-Bruun
źródło
Nie jestem zaznajomiony z tym obszarem - stąd komentarz nie jest odpowiedzią - czy próbowałeś kroków „1awsomeguy” w tym linku? ubuntuforums.org/archive/index.php/t-1471961.html
fossfreedom
Ten post na forum odnosi się do instrukcji, które nie są już ważne. Strona z instrukcją wyraźnie stwierdza, że zamiast tego należy użyć nowszego narzędzia , czego próbowałem użyć w powyższym pytaniu. Jedyna różnica polega na tym, że nie uruchamiam dysku „LiveCD” USB, ale uruchamiam go lokalnie, ponieważ dany zaszyfrowany folder nie jest lokalny, ale na dysku zewnętrznym.
Torben Gundtofte-Bruun,
Być może szybki sposób - czy próbowałeś skontaktować się bezpośrednio z programistą ecryptfs? Oto jego kontakty: launchpad.net/~kirkland Wygląda na przyjaznego. Przesłanie mu linku do tego pytania może go zaciekawić, ponieważ jest on bardzo konkretny i nadal pozostaje bez odpowiedzi.
Strapakowsky
@strapa - dobry pomysł! Wysłałem pytanie na Launchpad, ale pominąłem tę stronę. To może zadziałać!
Torben Gundtofte-Bruun
1
Najwyraźniej nikt nie wie, co oznacza ten komunikat o błędzie ... co za bezowocne marnotrawstwo mojego przedstawiciela! : '- (
Torben Gundtofte-Bruun

Odpowiedzi:

13

Zaktualizowano : 19 czerwca 2018 r

streszczenie

Niedawno dostałem podobny błąd podczas próby odszyfrowania niektórych danych z dysku zewnętrznego. Za każdym razem, gdy komunikat błędu pochodzi z niepoprawnego hasła, mogę to powielać przez cały dzień. Zamiast tego użyłem ecryptfs-recovery-private Użyłem ecryptfs-uncrap-passphrase , co moim zdaniem dotyczy konkretnych danych, chociaż nie chcę patrzeć na różnicę.

Uwaga: To nie jest przewodnik kopiowania / wklejania, to raczej zapis mojego sukcesu.

Rozpakowywanie hasła

Musisz znaleźć swój wrapped-passphraseplik. Jeśli nie masz pewności, gdzie to jest, możesz użyć find. Po zamontowaniu woluminu możesz wykonać:

sudo find /media -name wrapped-passphrase

Będziesz chciał zastąpić ścieżkę, która zwraca moje ścieżki wymienione poniżej.

Moje kroki po zamontowaniu starego napędu.

cd /media/_UUID_/.ecryptfs/paulj/.encryptfs
ecryptfs-unwrap-passphrase ./wrapped-passphrase
Passphrase:

Zawsze będzie monitował o podanie hasła, jest to hasło początkowo ustawione podczas tworzenia zaszyfrowanego katalogu domowego podczas instalacji Ubuntu. W konfiguracji zdecydowanie zaleca się używanie innego hasła niż hasło logowania ... jeśli próbujesz hasła logowania przez ostatnią godzinę i nie powiedzie się, wypróbuj inne ... spróbuj hasła, którego rzadko używasz.

Zapomniałem, co to jest moje, wypróbowałem wszystkie moje super niesamowite hasła i ciągle otrzymywałem ten komunikat o błędzie:

Error: Unwrapping passphrase failed [-5]
Info: Check the system log for more information from libecryptfs

Po przeszukaniu google przez około godzinę, pomyślałem, że spróbuję hasła, o którym wiedziałem, że było złe, więc wpisałem hasło po znaku zachęty.

Wypluwono następujące:

116b053e08564b53b2967e64e509bdc5

Przesłałem ponownie ecryptfs-uncrap-passphrase i spróbowałem innego hasła i otrzymałem taki sam komunikat o błędzie -5, jak wymieniony powyżej. Okazuje się, że właściwie ustawiłem hasło na hasło , prawdopodobnie z powodu moich frustracji związanych z odszyfrowywaniem danych w Ubuntu w przeszłości.

Dodaj hasło do Keying

Dodając hasło do ecryptfs-add-passphrase, użyj hasła wygenerowanego w poprzednim kroku.

sudo ecryptfs-add-passphrase --fnek
Passphrase: 116b053e08564b53b2967e64e509bdc5

Wyjścia:

Inserted auth tok with sig [b69fed2a22932ba4] into the user session keyring
Inserted auth tok with sig [8aad0fb4482edab3] into the user session keyring

Zamontuj lub odzyskaj

W tym momencie masz dwie opcje, sugeruję próbę zamontowania, a jeśli nie możesz zamontować, spróbuj odzyskać.

Montaż napędu

Łatwo jest myśleć o .Privatekatalogu jako niezamontowanym woluminie.

Ponownie tutaj musisz podać własne katalogi.

sudo mkdir -p /home/paulj/Private
sudo mount -t ecryptfs /media/_UUID_/.ecryptfs/paulj/.Private /home/paulj/Private

Passphrase: 116b053e08564b53b2967e64e509bdc5
Select cipher: 
 1) aes: blocksize = 16; min keysize = 16; max keysize = 32 (loaded)
 2) blowfish: blocksize = 16; min keysize = 16; max keysize = 56 (not loaded)
 3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24 (not loaded)
 4) cast6: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
 5) cast5: blocksize = 8; min keysize = 5; max keysize = 16 (not loaded)
Selection [aes]: aes

Select key bytes: 
 1) 16
 2) 32
 3) 24
Selection [16]: 16

Enable plaintext passthrough (y/n) [n]: n

Enable filename encryption (y/n) [n]: y <-- If your filenames display oddly, toggle this to y or n.

{this is the second value from Inserted auth tok...}
Filename Encryption Key (FNEK) Signature: 8aad0fb4482edab3

Attempting to mount with the following options:
  ecryptfs_unlink_sigs
  ecryptfs_fnek_sig=8aad0fb4482edab3
  ecryptfs_key_bytes=16
  ecryptfs_cipher=aes
  ecryptfs_sig=b69fed2a22932ba4
Mounted eCryptfs

Mam nadzieję, że kiedy początkowo utworzyłeś zaszyfrowany dysk, nie zadzierałeś z szyfrem lub bajtami klucza.

Pokazuje wszystkie dane w moim starym katalogu domowym.

cd /home/paulj/Private
ls -la

Uwaga: w tym momencie, jeśli otrzymasz nieprawidłowe zestawy uprawnień / właściciela / grupy, będziesz chciał odmontować dysk i przejść do sekcji Odzyskaj.

Jeśli uzyskasz dobry zestaw uprawnień, skopiuj na przykład śmieci z zaszyfrowanego dysku na pulpit.

mkdir ~/Desktop/Backup
cp -Rv ./* ~/Desktop/Backup

Wyzdrowieć

Odkryłem, że nie udało mi się zamontować moich ecryptfów. lswyświetlał nieprawidłowe ustawienia uprawnień / właściciela / grupy. Wyglądało to mniej więcej tak:

total ??
d????-??-?  ?? ??      ??      ??   ??            .
d????-??-?   6 root    root    4.0K Jun 19 11:42  ..
d???------  ?? ??      ??      ??   ??            .aptitude
d????-??-?  ?? ??      ??      ??   ??            .autoenv
-??-?--?--  ?? ??      ??      ??   ??            .autoenv_authorized
d????-??-?  ?? ??      ??      ??   ??            .aws
-??-?--?--  ?? ??      ??      ??   ??            .bash_aliases
-??-------  ?? ??      ??      ??   ??            .bash_history
-??-?--?--  ?? ??      ??      ??   ??            .bash_logout
-??-?--?--  ?? ??      ??      ??   ??            .bashrc
d????-??-?  ?? ??      ??      ??   ??            bin
d????-??-?  ?? ??      ??      ??   ??            .cache
d????-??-?  ?? ??      ??      ??   ??            code
d????-??-?  ?? ??      ??      ??   ??            .config

Nie jestem pewien, dlaczego miałem problemy z używaniem mount, więc zacząłem się bawić ecryptfs-recover-privatei miałem trochę szczęścia.

Ponownie musisz użyć wygenerowanego hasła z góry. Zauważ, że użyłem --rwprzełącznika tutaj, aby zamontować odczyt / zapis, jeśli pominiesz przełącznik, zamontuje on tylko do odczytu.

sudo ecryptfs-recover-private --rw /media/_UUID_/.ecryptfs/paulj/.Private

INFO: Found [/media/_UUID_/.ecryptfs/paulj/.Private].
Try to recover this directory? [Y/n]: Y
INFO: Found your wrapped-passphrase
Do you know your LOGIN passphrase? [Y/n] Y
INFO: Enter your LOGIN passphrase...
Passphrase: 116b053e08564b53b2967e64e509bdc5
Inserted auth tok with sig [b69fed2a22932ba4] into the user session keyring
INFO: Success!  Private data mounted at [/tmp/ecryptfs.idv9OohY].

tmpŚcieżka wyprowadza będzie zawierał zaszyfrowane zamontować.

ls -la /tmp/ecryptfs.idv9OohY

Powinno to pokazać pełną ścieżkę z odpowiednimi zestawami uprawnień. Teraz skopiuj gdzieś.

mkdir ~/Desktop/Recovered
sudo cp -Rv /tmp/ecryptfs.idv9OohY ~/Desktop/Recovered

W zamknięciu

POWODZENIA!!

Powinieneś być w stanie używać tego w każdym wariancie Ubuntu, ja na przykład użyłem go między Ubuntu a Mint i Lubuntu.

Jeśli właśnie znajdujesz ten wątek, chyba że użyłeś hasła jako hasła, te wartości szesnastkowe nie będą działać.

Paul J.
źródło
3
Przyjmę tę odpowiedź, ponieważ wydaje się, że zawiera dokładne rozwiązanie. Moje hasło nie było tak naprawdę „hasłem”, więc moje klucze byłyby inne. Niestety, dysk został sformatowany, ponieważ zrezygnowałem z szukania rozwiązania, więc nie ma to dla mnie większego znaczenia. I nauczyłem się nie szyfrować mojego dysku domowego bez powodu :-)
Torben Gundtofte-Bruun,
2
@paulj Zdobyłeś odznakę Ass Savior.
robertodecurnex
1
@robertodecurnex - Z przyjemnością pomagam, całkowicie zrezygnowałem z Ubuntu, ponieważ ciągle mnie w jakiś sposób psuje. Trzymam się Mint Desktop, a czasem serwera CENTOS.
Paul J
1
Natrafiłem na tę samą sytuację i udało mi się ją zamontować po dodaniu hasła, ale teraz widzę tylko pliki ECRYPTFS_FNEK_ENCRYPTED ... Czy jest jakiś sposób, aby uzyskać nieszyfrowane pliki?
Roman Newaza
1
@paulj Dziękujemy! Te kroki działały dokładnie dla mnie, chociaż moja sytuacja była inna (tak myślę). Miałem zaszyfrowaną /homew Linux Mint i korzystałem z pamięci USB Live Debiana, aby zrobić to, co sugerowałeś. Znalazłem już podobne odpowiedzi gdzie indziej, ale zawsze kończyłem się dziwnym błędem na końcu. Jedną z rzeczy, które robisz, jest sudo mkdir -p /home/paulj/Private. Teraz wiem, że błąd był w jakiś sposób związany z uprawnieniami.
marcelocra
4

To jest próba samodzielnego naprawienia tego:

  1. Dustin Kirkland napisał w 2008 roku :

    [...] próbujesz rozpakować hasło montowania za pomocą niewłaściwego hasła logowania. Możesz wypróbować zarówno swoje obecne, jak i nowe hasło lub dowolne inne, z których mogłeś skorzystać. Gdy uda ci się pomyślnie rozpakować hasło montowania, powinieneś być w stanie wykonać montowanie.

  2. Nazwa użytkownika i hasło logowania dla nowego systemu są identyczne jak dla starego systemu. I zostały napisane w dół hasło i wiem, że to prawidłowe (patrz dowód na moje pytanie).

  3. Warto sprawdzić ten podobny problem: Próbowanie zamontowania starego zaszyfrowanego domu

  4. Ponadto coś w nowym systemie może nie działać poprawnie. Aby to wykluczyć, uruchom LiveCD i spróbuj stamtąd.

... będę aktualizowany w miarę postępów!

Torben Gundtofte-Bruun
źródło
0

W przypadku, gdy hasło nie działa (co mi się przydarzyło, chociaż go nie zmieniłem), skorzystanie z hasła dostępu do kopii zapasowej pomogło mi. Właśnie odpowiedziałem „nie”, czy znam swoje hasło, i podałem 32 długi numer szesnastkowy, który otrzymałem i zapisałem przy pierwszym uruchomieniu.

Czasami może to być łatwiejsze niż zgadywanie.

Gość
źródło
0

Jeśli to może pomóc, podczas gdy miałem do czynienia z podobnym problemem (kod -5podczas odszyfrowywania katalogu domowego), dowiedziałem się o niektórych plikach .ecryptfsi .Privatenie były własnością mojego konta użytkownika, ale raczej root.

Stało się tak, ponieważ działałem ecryptfs-rewrap-passphrasejako root i dlatego zablokowałem ważne pliki z dala od mojego konta.

Dlatego gdy uruchomiłem ecryptfs-mount-privatemoje konto użytkownika, nie udałoby mu się to, ponieważ .ecryptfs/wrapped-passphraseodmówiono odczytu i zapisu niektórych plików (mianowicie ).

Rozwiązałem sprawę, biegając sudo chown -R USER:USER /home/USER/.ecryptfs /home/USER/.Private. Zastąp USERaktualną nazwą konta. YMMV

Dreadlockyx
źródło