Как мне подключить зашифрованный каталог / home на другом компьютере с Ubuntu?

38

Я сделал что-то немного, ну странно. Я установил Ubuntu 12.04 непосредственно на флэш-накопитель USB, зашифровав каталог / home, как указано во время установки. Я считаю, что файловая система - btrfs.

Теперь я вставил это в свой компьютер под управлением Ubuntu, и я хотел бы скопировать файл на флешку. Как я могу смонтировать зашифрованный домашний каталог, чтобы я мог копировать в него файлы?

Нафтули Кей
источник

Ответы:

36

Чтобы получить доступ к данным на вашей флешке и скопировать на нее файлы, вам необходимо смонтировать eCryptfs. Это включает в себя несколько шагов:

Сначала вы должны вставить свою палку. Если Ubuntu не монтирует его автоматически (обычно это делает.), Вы должны смонтировать его.

Теперь вы должны найти каталог с именем .Private. Если вы сделали установку по умолчанию, этот каталог должен находиться внутри /media/DISK/home/.ecryptfs/USERNAME/.Private. В этом примере DISKэто каталог, в котором монтируется ваша флешка, и USERNAMEимя пользователя, который вы указали при установке. Если вы не можете найти его самостоятельно, откройте терминал и введите

sudo find /media -type d -name .Private

В следующих шагах я предполагаю, что каталог находится в /media/DISK/home/.ecryptfs/USERNAME/.Private.

Вам нужен пароль для монтирования . Это отличается от вашего логина и пароля. Введите следующую команду в терминал:

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

Вы должны ввести пароль для входа в систему после установки вашего USB-Ubuntu ( не ваш обычный пароль). Команда выводит парольную фразу. Запишите это или скопируйте в файл.

Пароль позволяет разблокировать каталог. Вам нужно сделать это в два этапа:

> 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

Первая команда добавляет вашу парольную фразу в связку ключей ядра, а вторая пытается смонтировать вашу .Privateв каталог /media/myUSB. Если латте не существует, вы должны сначала создать его:

sudo mkdir /media/myUSB

Команда mountснова запросит пароль для входа . Далее он попросит кучу вещей.

  • Примите значения шифра и размера ключа по умолчанию ( aesи 16).
  • Тип nдля открытого текста.
  • Введите yдля шифрования имени файла.
  • Последнее - это ключ шифрования FileName (FNEK). Посмотрите на вывод ecryptfs-add-passphrase --fnekкоманды, которую вы только что ввели. Есть две строки, начинающиеся с Inserted auth tok …. Введите значение в квадратных скобках второго вывода ( 123456789abcdef0).

Теперь вы можете получить доступ к файлам /media/myUSBи копировать их в каталог или подкаталоги.

Большая часть моего описания взята из « Live CD-метода открытия зашифрованного домашнего каталога ».

QBi
источник
4
Спасибо. Меня поймали три вещи, которые могли бы помочь другим: 1) мне было нужно sudo ecryptfs-add-passphrase --fnek, обратите внимание на sudo 2) ecryptfs-add-passphraseхочет развернутую шестнадцатеричную фразу, но она mountпринимает парольную фразу «login» 3) мне нужно было повторить ecryptfs-add-passphraseпосле umount
bsb
Спасибо - это замечательно! Решил и мою проблему :) Есть ли способ изменить команду монтирования так, чтобы она также сохранила исходных пользователя (uid) и группу?
Осси Вильякайнен
47

Вы можете использовать ecryptfs-recover-private.

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

Он предложит ввести пароль для монтирования, разблокировать упакованную фразу-пароль и смонтировать каталог в режиме только для чтения /tmp/с помощью одной команды. Используйте флаг --rwдля монтирования зашифрованной файловой системы как чтение и запись.

Вы можете проверить справочную страницу для получения дополнительной информации.

Сеппо Эрвиаля
источник
7
Не уверен, почему это не принятый ответ. Это намного быстрее.
Кай
2
@Kai Потому что этот ответ пришел через три года ...
mook765
3
Тем не менее, когда я запускаю команду, она настаивает на том, чтобы я запускал ее какroot
Seanny123
4
флаг --rwс двойной чертой. в случае, если вы получили ошибку mount (2), запустите sudo ecryptfs-managerfirst и немедленно выйдите из (4). затем повторите
описанную
3
Ха Ха Не берите в голову мое предыдущее предложение. Лучше сделать то, что сказал Улкас : беги sudo ecryptfs-managerи выбирай,4. Exit ничего не делая. Это имеет удивительный побочный эффект, заставляющий вещи работать.
Нобар
4

У меня была похожая проблема, и она закончилась. Я переносил свою систему на другой жесткий диск, и у меня был один и тот же пользователь с зашифрованным домом как на старой, так и на новой системе.

Я пытался

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

но этот каталог был на самом деле символическая ссылка на

/home/.ecryptfs/my_name/.Private/

Целевой каталог существовал, но указал на .Private на моем новом диске .

Правильная команда должна быть:

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

возможно, ecryptfs-recovery-private должен отображать предупреждение, если обнаружит этот шаблон. Это похоже на распространенную ошибку.

Петр
источник
О, чувак .. спасибо! Я потратил ооочень много времени на это. Потом подумал, что у меня это есть, только чтобы понять, что он действительно монтирует мой новый диск ... Спасибо, это сработало безупречно.
квапка
0

Развертка парольной фразы не сработала. Мне нужно было выполнить:

ecryptfs-unwrap-passphrase /media/DISK/home/.ecryptfs/USERNAME/.ecryptfs/wrapped-passphrase 
user307400
источник
2
Принятый ответ был исправлен, чтобы отразить это сейчас.
mwfearnley