Wie kann ich die Verwendung der integrierten Heimverzeichnisverschlüsselung beenden?

106

Ich habe eine neue Ubuntu 10.04-Installation mit verschlüsseltem Home-Verzeichnis (unter Verwendung der vom Ubuntu-Installer angebotenen integrierten Verschlüsselung).

Was ist der einfachste Weg, um die Verschlüsselung zu beenden? (Dh, um mein Home-Verzeichnis dauerhaft zu entschlüsseln.)

(Es gibt mir Probleme mit Kernel-Updates, und ich möchte nur den Ärger reduzieren, den ich mit dieser Installation habe.)

Jonik
quelle

Antworten:

76

Beim googeln habe ich diesen Beitrag gefunden :

Nicht um einen alten Thread aufzurufen, aber falls jemand Fehler beim Befolgen dieser Anweisungen hat, habe ich Folgendes getan.

  1. Sichern Sie das Basisverzeichnis, während Sie angemeldet sind sudo cp -rp /home/user /home/user.backup

    1.1. Überprüfen Sie, ob Ihr Home-Backup alles hat !!!

  2. Starten Sie Root über Grub neu
  3. Löschen Sie Ihr Home-Verzeichnis rm -rf /home/user
  4. Entfernen Sie die Pakete apt-get remove ecryptfs-utils libecryptfs0
  5. Stellen Sie Ihr Home-Verzeichnis wieder her mv /home/user.backup /home/user
  6. neustarten
  7. Entfernen Sie einen dieser .Private .ecryptfsOrdnerrm -rf ~/.Private rm -rf ~/.ecryptfs
  8. Yay!
Das hat bei mir funktioniert. Die Dateiberechtigungen für den Basisordner bleiben erhalten und beeinträchtigen Dropbox- oder Git-Repos nicht. Aus irgendeinem Grund würde meine Neuinstallation unter Ubuntu 9.10 den ersten Befehl nicht ausführen. Stellen Sie einfach sicher, dass Sie den Prozess bei der Verwendung durchdenken rm -rf. Ich wollte dies nur für meine Akte posten, aber für alle anderen, die auf Probleme stoßen.

Einige Notizen

  • reboot in root via grub war mir etwas unklar; Ich habe nicht neu gestartet, sondern nur zu root gewechselt (ein anderes Benutzerkonto mit sudoBerechtigungen würde genauso gut funktionieren).
  • Vor dem Entfernen der Pakete ecryptfs-utilsund libecryptfs0würde funktionieren, musste ich entfernen /home/.ecryptfs/<myusername>. (Es hat sich beschwert, dass ecryptfs-utilsin Gebrauch war.)

Davon abgesehen hat das bei mir funktioniert. Es ist alles andere als einfach, also zögern Sie nicht, bessere Lösungen zu posten!

Jonik
quelle
Ich werde das akzeptieren, da es für mich funktioniert hat, aber wie gesagt, zögern Sie nicht, etwas einfacheres oder besseres zu posten!
Jonik
3
Dies funktionierte auch für mich am 12.10. Ich musste auch /home/.ecryptfs/<myusername>zuerst löschen . Außerdem hatte ich wieder einzuhängen /obwohl in der Root - Konsole, aber ich denke , das ist eine andere Geschichte. Vielen Dank!
Constantinius
1
Arbeitete auch am 12.04. Das Einzige, was Sie tun müssen, ist, wenn Sie zu root ( sudo su) wechseln, anstatt "über grub zu root" neu zu booten. Sie müssen jedoch /home/user( cd /homezum Beispiel) aus umount /home/userdem Verzeichnis aussteigen und Probleme haben, um das Home-Verzeichnis zu entfernen, bevor Sie das verwenden können rm -rf. Sie müssen auch rm -rf /home/user.backup/.ecryptfsvor dem Entfernen der 2 Pakete.
Laurent
3
+1 Dies ist einfacher über SSH zu tun, ohne dass GRUB behandelt werden muss oder versucht wird, ein Mounten zu vermeiden. Seien Sie vorsichtig beim Löschen von /home/.ecryptfs. Anscheinend gibt es einen Symlink auf / home / username. Ich habe alle meine Daten verloren.
htoip
2
Wenn bei Schritt 1 eine Fehlermeldung /home/<username>/.gvfs: Cannot stat: Permission deniedrsync -avz --exclude '*.gvfs' /home/<username> /home/<username>.backup
angezeigt wird,
40

Hier sind Sie, hoffe das hilft (siehe ecryptfs-setup-private(1)):

$ ecryptfs-setup-private --undo

Die Ausgabe behauptet:

Für den Fall, dass Sie die Einrichtung Ihres privaten eCryptfs-Verzeichnisses entfernen möchten, müssen Sie die folgenden Aktionen sehr sorgfältig manuell ausführen:

  1. Beziehen Sie Ihren Mountpoint für das private Verzeichnis

    $ PRIVATE=`cat ~/.ecryptfs/Private.mnt 2>/dev/null || echo $HOME/Private`
    
  2. Stellen Sie sicher, dass Sie alle relevanten Daten aus Ihrem $PRIVATEVerzeichnis verschoben haben

  3. Hängen Sie Ihr verschlüsseltes privates Verzeichnis aus

    $ ecryptfs-umount-private
    
  4. Machen Sie Ihr privates Verzeichnis wieder beschreibbar

    $ chmod 700 $PRIVATE
    
  5. Entfernen Sie $PRIVATE, ~/.Private,~/.ecryptfs

    Hinweis: DIES IST SEHR DAUERHAFT, SEHR VORSICHTIG

    $ rm -rf $PRIVATE ~/.Private ~/.ecryptfs
    
  6. Deinstallieren Sie die Dienstprogramme (dies ist spezifisch für Ihre Linux-Distribution).

    $ sudo apt-get remove ecryptfs-utils libecryptfs0
    
zuzust
quelle
Vielen Dank. Ich habe es bereits gelöst, aber ich denke, das ist nützlich für andere.
Jonik
@Jonik Konnten Sie sich .ecryptfs/jonik/.Privatenach dem Kernel-Update ordnungsgemäß anmelden oder haben Sie die Verschlüsselung gesichert und rückgängig gemacht?
Isomorphismen
3
Dies gilt nur für ein verschlüsseltes Verzeichnis "~ / Private" und nicht für ein verschlüsseltes Home-Verzeichnis, wie im OP angegeben. Weitere Informationen zu den Unterschieden finden Sie unter help.ubuntu.com/community/EncryptedHome .
Mittwoch,
15

Das erste, was zu tun ist: SICHERN IHRES HAUSES Ich kann es nicht lauter sagen ... Das Rückgängigmachen der Verschlüsselung entspricht dem Zurücksetzen ( rm -rf) Ihres Hauses, das tatsächlich von einem Mount verborgen wird.

2. Schritt: Melden Sie sich von einem Desktop-Manager ab und rufen Sie eine virtuelle Konsole auf ( CTRL-ALT-F1)

Zum Schluss: für Details:

ecryptfs-setup-private --undo

Für den Fall, dass Sie die Einrichtung Ihres privaten eCryptfs-Verzeichnisses entfernen möchten, müssen Sie die folgenden Aktionen sehr sorgfältig manuell ausführen:

  1. Beziehen Sie Ihren Mountpoint für das private Verzeichnis PRIVATE= cat ~/.ecryptfs/Private.mnt 2>/dev/null || echo $HOME/Private

  2. Stellen Sie sicher, dass Sie alle relevanten Daten aus Ihrem $PRIVATEVerzeichnis verschoben haben

  3. Hängen Sie Ihr verschlüsseltes privates Verzeichnis aus

    ecryptfs-umount-private
    
  4. Machen Sie Ihr privates Verzeichnis wieder beschreibbar

    chmod 700 $PRIVATE
    
  5. Entfernen Sie $PRIVATE, ~/.Private, ~/.ecryptfs Hinweis: Dies ist sehr DAUER, sehr vorsichtig sein

      rm -rf $PRIVATE ~/.Private ~/.ecryptfs
    
  6. Deinstallieren Sie die Dienstprogramme

     sudo apt-get remove ecryptfs-utils libecryptfs0
    

Ich würde sagen, Schritt 5 ist ein bisschen falsch: Es gibt keine Notwendigkeit zu löschen $PRIVATE, was für mich mein Zuhause war ....

Nach .Privateund .ecryptfsLöschen wiederherstellen nur zu Hause:]

hhlp
quelle
5
Was ist, wenn Sie mehr als die Hälfte Ihres Festplattenspeichers verschlüsselt haben? Gibt es einen Ausweg, ohne ein anderes Laufwerk zu kaufen?
Isomorphismen
@hhlp Interessant, dass du deine $ PRIVATE nicht löschen musstest. Ist das nicht Ihr Benutzerverzeichnis? Bedeutet das, dass man sein eigenes Verzeichnis nicht löschen muss, außer dass ein Backup immer wichtig ist?
XavierStuvw
8

Diese Schritte funktionieren in einer Serverumgebung

Schritt 1: Sichern Sie Ihr Home-Verzeichnis

sudo cp -rp / home / $ USER /home/$USER.backup

Schritt 2: Bestätigen Sie, ob alles gesichert ist

sudo ls -al /home/$USER.backup

Schritt 3: Hängen Sie den Home-Ordner um, da das Verschlüsselungsprogramm ihn normalerweise an den Mount-Punkt hängt, z. B. /home/$USERauch bekannt als $HOME. Sie können Ihren Mount-Punkt durch Ausführen bestätigen df -h $HOME. Sie müssen cd /tmp(oder ein anderes Nicht- $HOMEVerzeichnis), um die Bereitstellung aufheben zu können$HOME

cd / tmp
sudo umount / home / $ USER

Schritt 4: Löschen Sie den alten Basisordner

sudo rm -rf / home / $ USER

Schritt 5: Entfernen Sie die Verschlüsselungsprogrammdatei

sudo rm -rf /home/$USER.backup/.ecryptfs

Schritt 6: Entfernen Sie die Verschlüsselungsprogramme aus dem System

sudo apt-get entferne ecryptfs-utils libecryptfs0

Schritt 7: Wiederherstellen des unverschlüsselten Basisordners unter dem ursprünglichen Pfad

sudo mv /home/$USER.backup / home / $ USER

Schritt 8: Ändern Sie den Besitz des wiederhergestellten Ordners wieder auf Ihren Benutzer

sudo chown -R $ (id -u): $ (id -g) / home / $ USER

Schritt 9: Abmelden / Anmelden, um sicherzugehen, dass alle Benutzerdaten korrekt neu gestartet werden (oder dass Fehler auftreten, während Sie sich an Ihre Arbeit erinnern)

Erick
quelle
Brillant. Vielen Dank für diesen klaren und präzisen Leitfaden. Hat mir geholfen!
James Lalor
Ich habe auch /home/.ecryptfs/$USER mit sudo rm -rf /home/.ecryptfs/$USER
JimB
5

Hinzufügen eines weiteren Leitfadens zur langen Liste, nachdem mir klar wurde, dass die an anderer Stelle genannten aufdringlichsten Schritte nicht erforderlich sind.

Mein Guide muss nicht neu gestartet werden und ich habe es erfolgreich über SSH beendet . Es sollte auch funktionieren, wenn andere eCryptfs-Mounts auf dem Computer vorhanden sind.

Die einzige nicht offensichtliche Voraussetzung ist, dass Sie sich als ein anderer Benutzer mit sudoZugriff anmelden können.

  1. Melden Sie sich als Benutzer mit dem verschlüsselten Basisverzeichnis an ( userin diesem Handbuch genannt).

  2. Um die Pfade in den folgenden Schritten einfach und symmetrisch zu halten:

    cd /home
    
  3. Duplizieren Sie den Inhalt des entschlüsselten Basisordners in ein anderes Verzeichnis.

    sudo cp -rp user user.new
    
  4. Abmelden ( exitoder logout). Melden Sie sich als ein anderer Sudoer an.

  5. Stellen Sie sicher, dass die eCryptfs-Bereitstellung nicht bereitgestellt ist. Tun Sie es nicht umountmanuell, es kann zu Datenverlust kommen! (Ich habe es selbst erlebt. Ich hatte eine weitere SSH-Sitzung mit userangemeldetem Benutzer.)

    mount | grep ecryptfs
    

    Die Ausgabe muss leer sein. Falls es andere eCryptfs-Mounts gibt, darf dieser keine enthalten /home/user.

  6. Genau wie in Schritt 2.

    cd /home
    
  7. Markieren Sie das Duplikat als nicht mit eCryptfs verwaltet. (Es ist nicht erforderlich, eCryptfs-Pakete zu deinstallieren, insbesondere wenn andere eCryptfs-Bereitstellungen vorhanden sind.)

    sudo rm user.new/.ecryptfs user.new/.Private
    
  8. Verschieben Sie das nicht verschlüsselte Basisverzeichnis an den richtigen Ort.

    sudo mv user user.old && sudo mv user.new user
    
  9. Melden Sie sich als an userund überprüfen Sie, ob alles funktioniert und eCryptfs nicht aktiviert wird.

    mount | grep ecryptfs
    
  10. Entfernen Sie den ursprünglichen Inhalt des userBasisordners und die verschlüsselten Daten.

    rm -r /home/user.old
    sudo rm -r /home/.ecryptfs/user
    
Melebius
quelle
1
  • Wenn Sie auf einem externen Speicher sichern können, führen Sie dies aus. (Nicht direkt benötigt, aber immer gut vor der Dateibearbeitung.)

  • Machen Sie sich ttyzumindest ein wenig mit. (Presse Ctrl Alt F7, Ctrl Alt F1etc.) Sie müssen mit zwei arbeiten ttyes. Ein Root und einer Ihrer Hauptbenutzer.

  • Melden Sie sich als rootin einem separaten Verzeichnis an, und erstellen Sie ein neues Basisverzeichnis

    mkdir /home/user.newdir
    chown user:user /home/user.newdir
    
  • Melden Sie sich von der grafischen Sitzung ab. Sie können einen Neustart durchführen, um sicherzustellen, dass unter Ihrem normalen Benutzer keine Programme ausgeführt werden.

  • Melden Sie sich als normaler Benutzer an einem separaten Ort an und verschieben Sie alle Ihre Dateien an das neue Ziel:

    mv ~/* /home/user.newdir/
    
  • rootbenenne die Verzeichnisse mit dem tty um:

    mv /home/user /home/user.encfs
    mv /home/user.newdir /home/user
    
  • alles sollte jetzt funktionieren. :) Sobald Sie fertig sind, entfernen Sie die alten Dateien /home/.encryptfs, /home/user.encfs, /home/user/.Private, /home/user/.encryptfs. Wenn Sie möchten, können Sie sie zuerst umbenennen und später entfernen.

VasyaNovikov
quelle
1

Ich habe hier keine der Antworten verwendet. Stattdessen (in Ubuntu Studio 14.04):

  1. Ich habe alle Dateien, die ich behalten wollte, insbesondere alle. * -Dateien, in ein Verzeichnis außerhalb von $ HOME kopiert.
  2. Ich habe einen neuen Benutzer erstellt (System> Benutzer und Gruppen) und diesen Benutzer der sudo-Gruppe hinzugefügt. Ich habe das Kontrollkästchen "Heimatordner verschlüsseln, um vertrauliche Daten zu schützen" deaktiviert.
  3. Ich habe mich abgemeldet und wieder angemeldet, als der neue Benutzer mein ursprüngliches Konto gelöscht hat. Dabei wurde überprüft, welche numerische UID zuerst verwendet wurde (erweiterte Optionen), und die Option zum Löschen der Dateien in meinem ursprünglichen $ HOME ausgewählt. Dies wurde jedoch mit einem "unbekannten Fehler" abgeschlossen. Beim Einchecken / Zuhause konnte ich feststellen, dass mein altes $ HOME verschwunden war
  4. Ich habe mein ursprüngliches Benutzerkonto neu erstellt, um zu überprüfen, ob es mit der ursprünglichen numerischen UID erstellt wurde, und um sicherzustellen, dass das Kontrollkästchen "Benutzerordner verschlüsseln, um vertrauliche Daten zu schützen" deaktiviert ist.
  5. Ich habe die neue, praktisch leere Version meines ursprünglichen $ HOME-Verzeichnisses gelöscht und mein Backup von $ HOME in mein ursprüngliches $ HOME umbenannt und mich abgemeldet.
  6. Ich habe mich in mein neues Originalkonto eingeloggt und es war, als wäre nichts passiert.
  7. Ich überprüfte / home, um ein Verzeichnis .ecryptfs zu finden, das ich ohne negative Auswirkungen entfernte.

Ich sehe keinen Grund dafür, dass das Entfernen des Pakets, das verschlüsselte Home-Verzeichnisse bereitstellt, nicht optional sein sollte, und ich habe das Entfernen des neuen Benutzerkontos, das ich zu diesem Zweck erstellt habe, verschoben, da ich denke, dass es in Zukunft nützlich sein könnte.

Mein Grund dafür? Der alte Computer sieht aus wie es ausfällt. Wenn dies fehlschlägt, möchte ich problemlos auf die Festplatte eines anderen Computers zugreifen können.

Richard Kandarian
quelle
1

Joniks Erklärung funktioniert gut. Aber anstelle von Schritt 2 habe ich Folgendes getan:

  1. Ausloggen
  2. Drücken Sie Ctrl+ F4. Eine Befehlszeilenschnittstelle sollte geöffnet werden.
  3. Melden Sie sich als root an
  4. rm -rf .ecryptfs

Anstelle von Schritt 6: Drücken Sie dann Ctrl+ F7. Wenn der GUI-Anmeldebildschirm nicht angezeigt wird, drücken Sie Ctrl+ F8.

Martin Thoma
quelle
-3

Einfache Lösung, die bei mir funktioniert hat:

Sie sollten einen anderen Benutzer mit sudo-Zugriff haben

  1. Starten Sie neu
  2. Drücken Sie auf dem Anmeldebildschirm CTRL+ ALT+F1
  3. Melden Sie sich als der andere Benutzer an (mit sudo-Zugriff)
  4. sudo rm -rf /home/youruser/.ecryptfs
  5. sudo rm /home/youruser/.Private
  6. sudo apt-get remove --purge ecryptfs-utils libecryptfs1
  7. sudo reboot
  8. Melden Sie sich als Ihr Benutzer an und genießen Sie Ihr Heimverzeichnis ohne Verschlüsselung;)
Sycu
quelle
3
Dadurch werden alle Änderungen gelöscht, die nach dem Aktivieren der Verschlüsselung vorgenommen wurden. Es ist wahrscheinlich in Ordnung für ein gerade installiertes System, aber Sie müssen dies ausdrücklich erwähnen.
Melebius