Wie verschiebe ich mein verschlüsseltes / Zuhause auf einen neuen Computer?

7

Hallo, ich habe ein neues Notebook und möchte meine Heimdaten auf den neuen Computer verschieben.

Ich denke, es gibt mehrere Möglichkeiten, dies zu tun

  • Kopieren Sie alles auf eine externe Festplatte und wechseln Sie auf einen neuen Computer zurück
  • Führen Sie eine Deja-Dup-Sicherung durch und stellen Sie sie dann auf dem neuen Computer wieder her
  • rsyc / über sshfs auf neuen Computer verschieben
  • ...?

Meine Frage ist, wie ich die aktuelle Verschlüsselungsverschlüsselung von / home beibehalten und auf dem neuen Computer ordnungsgemäß zum Laufen bringen kann. Wie muss ich den neuen Computer installieren, damit ich die verschlüsselten Home-Dateien des alten verwenden kann?

Wenn ich Deja-Dup verwenden würde, muss ich mich dann um die Verschlüsselung auf dem alten Computer kümmern, oder verschlüsselt die neue Installation einfach alles Neue?

seb
quelle

Antworten:

10

Gute Frage! Ich mache das eigentlich ziemlich häufig (alle paar Monate). Dazu verwende ich rsync, um alle meine /homePartitionen / Verzeichnisse vom ALTEN Computer auf den NEUEN zu kopieren .

Stellen Sie zunächst sicher, dass Sie den NEUEN Computer installiert haben openssh-serverund ecryptfs-utilsausführen.

sudo apt-get install openssh-server ecryptfs-utils

Sie können Ihren öffentlichen SSH-Schlüssel in der /root/.ssh/authorized_keysDatei des Root-Benutzers installieren . Normalerweise lege ich auf dem NEUEN Computer ein Root-Passwort fest.

sudo passwd

Erstellen Sie auf dem NEUEN Computer außerdem einen neuen Benutzer, dessen Name und Kennwort genau mit dem Namen und dem Kennwort auf dem alten Computer übereinstimmen.

sudo adduser YOURUSER

Stellen Sie unbedingt sicher, dass IHR BENUTZER derzeit weder am NEUEN noch am ALTEN Computer angemeldet ist.

Synchronisieren Sie nun vom ALTEN Computer als Root Ihr /homeVerzeichnis vom ALTEN auf den NEUEN Computer:

sudo rsync -aP /home/ NEW:/home/

Stellen Sie schließlich sicher, dass die Dateien auf dem NEUEN Computer Ihrem Benutzer gehören:

sudo chown -R /home/.ecryptfs/YOURUSER /home/YOURUSER

Und das sollte es tun! Sie sollten sich wie gewohnt bei Ihrem NEUEN Computer anmelden und Ihre Daten lesen und schreiben können!

Vollständige Offenlegung: Ich bin der Autor und Betreuer der Encrypted Home Directory-Funktion von Ubuntu.

Dustin Kirkland
quelle
ok, ich habe verwendet sudo rsync -aP /home/ notebook2:/home/und es synchronisierte ungefähr 276000 Dateien über Nacht. Jetzt muss ich den chownBefehl herausfinden ... Ich nehme an, ich ssh in den neuen Computer und führe ihn als root @ NEWMACHINE aus
16.
3
@seb Wenn Sie als root auf dem neuen Computer angemeldet sind, sollte der Befehl chown so aussehen, denke ich:sudo chown YOURUSER:YOURUSER -R /home/.ecryptfs/YOURUSER /home/YOURUSER
Webwurst
0

Ich musste kürzlich eine ähnliche Aufgabe erledigen und fand Dustins Antwort sehr nützlich.

Mein Szenario war, dass ich meine Installation von einer Festplatte auf eine andere verschob. Meine Installation hat einen ihrer Benutzer (nennen wir sie "paranoid") mit einem verschlüsselten Home-Verzeichnis, und ich wollte diesen Benutzer migrieren, damit er sich bei meiner neuen Installation anmelden kann.

Ich gehe am Ende in einem Anhang detailliert darauf ein, wie ich diesen Prozess durchlaufen habe.

Aber unter dem Strich habe ich mein System an einen Punkt gebracht, an dem ich eine alte und eine neue Installation hatte, die beide dieselbe / home-Partition teilen. Es gibt / home / admin, das das Home-Verzeichnis des Admin-Benutzers auf meiner neuen Installation ist. Und es gibt / home / paranoid, das Home-Verzeichnis des paranoiden Benutzers in meiner alten Installation.

/ home / paranoid ist verschlüsselt. Es hat folgendes:

/ home / paranoid # ls

Access-Your-Private-Data.desktop -> /usr/share/ecryptfs-utils/ecryptfs-mount-private.desktop .ecryptfs -> /home/.ecryptfs/paranoid/.ecryptfs

.kde

.lokal

.Private -> /home/.ecryptfs/paranoid/.Private

README.txt -> /usr/share/ecryptfs-utils/ecryptfs-mount-private.txt

Die ganze Magie eines verschlüsselten Hauses geschieht tatsächlich in einem Ordner, der in /home/.ecryptfs/ nach dem Benutzer benannt ist.

In meinem Beispiel:

/home/.ecryptfs/paranoid# ls -la

.ecryptfs

.Privat

Alle tatsächlichen Dateien des Benutzers werden verschlüsselt gespeichert

/home/.ecryptfs/paranoid/.Private

Und Konfigurationsdaten sind in

/home/.ecryptfs/paranoid/.ecryptfs

Es scheint, dass Sie zur Migration des Benutzers lediglich eine Situation entwickeln müssen, in der:

  1. Die neue Installation hat einen Benutzer mit identischem Namen und einem identischen Kennwort wie der Benutzer der alten Installation.
  2. Der Ordner / home in der neuen Installation enthält eine Kopie von /home/.ecryptfs/ paranoid / und von / home / paranoid /
  3. Die Dateien in diesen beiden Verzeichnissen gehören dem Benutzer paranoid
  4. ecryptfs-utils ist installiert

Wir müssen 1) der Fall sein, da die Dateien verschlüsselt sind, die durch das Benutzerpasswort entsperrt werden. Das Kennwort auf der neuen Installation muss also identisch sein, damit die Dateien entschlüsselt werden können.

Wir haben 2) so eingerichtet, dass die Verzeichnisstruktur für den Benutzer bei der Neuinstallation dieselbe ist wie bei der alten

Wir müssen 3) der Fall sein, damit der Benutzer Lese- und Schreibrechte für die Dateien in seinem Haus hat.

Wir brauchen 4), damit das System die Dateisystemdateien entschlüsseln kann.

So erreichen Sie dies:

  1. Wenn Sie als "admin" angemeldet sind und das Home von der vorhandenen Home-Partition installiert ist, benennen Sie den Ordner / home / paraniod in paranoid_old um

    sudo mv /home/paranoid folder paranoid_old
    
  2. Benennen Sie die Datei /home/.ecryptfs/paranoid in /home/.ecryptfs/paraonoid_old um

    sudo mv /home/.ecryptfs/paranoid   /home/.ecryptfs/paraonoid_old
    

    Die obigen zwei Schritte sichern die paranoiden Daten, damit sie nicht von Schritt 3 erfasst werden

  3. Erstellen Sie einen neuen Benutzer, während Sie auf einem neuen Computer namens paranoid mit genau demselben Kennwort angemeldet sind, das paranoid bei der alten Installation hat

    sudo adduser paranoid
    

Dadurch wird nun ein neues Verzeichnis / home / paranoid in / home
4 erstellt. Benennen Sie dieses Verzeichnis / home / paranoid in / home / paranoid_new um

    sudo mv /home/paranoid /home/paranoid_new

Bringen Sie nun die Backups zurück:

  1. Benennen Sie den Ordner / home / paranoid_old in paranoid um

    sudo mv /home/paranoid_old /home/paranoid
    
  2. Benennen Sie /home/.ecryptfs/paranoid_old in /home/.ecryptfs/paranoid um

    sudo mv /home/.ecryptfs/paranoid_old    /home/.ecryptfs/paranoid
    
  3. Stellen Sie jetzt sicher, dass unser neuer paranoider Benutzer die Dateien besitzt

    sudo chown paraniod:users -R /home/.ecryptfs/paranoid /home/paranoid
    

Schritt 7) kann erforderlich sein, da - obwohl die Dateien in /home/.ecryptfs/paranoid bereits einem Benutzer namens "paranoid" gehören - dies der paranoide Benutzer auf dem vorhandenen Installationsprogramm ist. Dieser Benutzer hat möglicherweise eine andere Benutzernummer in der Datei / etc / passwd auf dem neuen Installationsprogramm als auf dem alten Installationsprogramm. Und es ist die Benutzernummer, die die Dateien besitzt - nicht der Benutzername. Bis Sie die Dateien während der Ausführung der neuen Installation chownieren, gehören die Dateien möglicherweise dem falschen "Paranoiden". Wenn der paranoide Benutzer in der alten und der neuen Installation eine andere Benutzernummer hat, kann sich der paranoide Benutzer nach dem Chowning der Dateien nicht bei der alten Installation anmelden, da er keine Berechtigungen für die Dateien hat. Sie können diese Situation beheben, indem Sie die Datei / etc / passwd auf dem alten Installationsprogramm bearbeiten, um paranoid die gleiche Benutzernummer wie auf dem neuen Installationsprogramm zu geben. Stellen Sie nur sicher, dass Sie keine Nummer eines vorhandenen Benutzers verwenden.

8) installiere ecryptfs-utils sudo apt-get installiere ecryptfs-utils

Zu diesem Zeitpunkt sollten Sie in der Lage sein, das neue Installationsprogramm neu zu starten, sich bei paranoid anzumelden und die migrierten Home-Dateien in all ihrer entschlüsselten Form zu sehen. / home / paranoid_new kann gelöscht werden.

Anhang 1 So richte ich die Systeme ein: Ich habe eine aktualisierte Kubuntu-Version auf einer neuen Festplatte installiert, während meine vorhandene Installation auf einer anderen Festplatte beibehalten wurde. Bei meiner vorhandenen Installation befindet sich / home auf einer eigenen Partition (/ dev / mapper / kubuntu - vg-home_lv), die vom Stammverzeichnis getrennt ist. Ich habe mein aktualisiertes kubuntu auf meinem neuen Laufwerk installiert, während die anderen Laufwerke getrennt wurden, und ein Administratorbenutzerkonto ("admin") mit einem anderen Namen als eines der Konten in meiner vorhandenen Installation erstellt. Beim Booten von einer Live-Instanz von kubuntu habe ich sowohl meine alten als auch meine neuen Festplatten gemountet und die Datei [newdirveMountPoint] / home / admin nach [oldinstalldriveMountPoint] / home / admin kopiert. Dann habe ich die Datei [newdirveMountPoint] / etc / fstab bearbeitet und eine Zeile hinzugefügt Es montiert mein auslaufendes Laufwerk als Zuhause

/dev/mapper/kubuntu--vg-home_lv /home     ext4    errors=remount-ro 0       1

Wenn ich jetzt meine neue Installation als "admin" starte, liest / home von derselben Partition wie meine alte Installation. Es gibt also jetzt / home / admin, das das Home-Verzeichnis des Admin-Benutzers auf meiner neuen Installation ist. Und es gibt / home / paranoid, das Home-Verzeichnis des paranoiden Benutzers in meiner alten Installation. Meine alten und neuen Installationen teilen sich jetzt die Häuser.

ttguy
quelle