Расшифруйте $HOME из отдельного раздела после переустановки

Ранее я установил 10.10 с тремя разделами - sda1- /boot (ext2) sda2 - / (btrfs) sda3- / home (btrfs). И я выбрал зашифрованную домашнюю папку. Теперь на той же машине я установил 10.04 (LTS) с выбором новой /boot на том же sda1, / на тех же sda2 (ext4) и sda3(home), оставленных нетронутыми от предыдущей установки.

Моя проблема в том, что теперь я не могу получить доступ / смонтировать мой предыдущий дом с помощью утилиты ecryptfs-mount-private с парольной фразой более раннего домашнего пользователя. Вот ОШИБКА: Зашифрованный частный каталог не настроен должным образом. Я также установил утилиты btrfs.

Так есть ли какие-либо решения / обходные пути, чтобы получить доступ к $home на другом разделе.

2 ответа

Повезло тебе! У меня была та же проблема, и я написал скрипт, который облегчит монтирование папок ecryptfs с помощью FNEK.

sudo su -

Затем откройте nano/vim/ ваш редактор и создайте файл ecryptfs-fnek-helper.sh со следующим содержанием:

#!/bin/bash

# Thanks to https://bugs.launchpad.net/ubuntu/+source/ecryptfs-utils/+bug/455709
# 

echo "Where is the /home with the .ecryptfs mounted? (default=/mnt/home)"
read home_ecryptfs
if [ -z "$home_ecryptfs" ]; then
    home_ecryptfs=/mnt/home
fi
home_ecryptfs=$home_ecryptfs/.ecryptfs

echo "Whose encrypted home would you like to mount?"
read user
if [ -z "$user" ]; then
    echo "You have to enter a user!"
    exit;
fi

echo "What is the user's password?"
read -s password
if [ -z "$password" ]; then
    echo "You have to enter a password!"
    exit;
fi

echo "Where would you like to mount it? (Default: /mnt/[username])"
read target
if [ -z "$target" ]; then
    target=/mnt/$user
fi
target=$target/
mkdir -p $target

wrapped=$home_ecryptfs/$user/.ecryptfs/wrapped-passphrase
sig=$home_ecryptfs/$user/.ecryptfs/Private.sig
private=$home_ecryptfs/$user/.Private/

echo I will be mounting $private into $target.

echo "Clearing the keyring."
keyctl clear @u
keyctl list @u

echo "Unwrapping passphrase and inserting it into key:"
printf "%s" $password | ecryptfs-insert-wrapped-passphrase-into-keyring $wrapped -

keyctl list @u

echo -e "\e[0;92mPassphrase:"
echo -e '\e[1;92m'`printf "%s" $password | ecryptfs-unwrap-passphrase $wrapped - `'\e[0m'
echo -e "\e[0;96mFilename Encryption Key (FNEK) Signature:"
echo -e '\e[1;96m'`tail -n1 $sig`'\e[0m'
echo -e "Mounting now! Be sure to enable FNEK!"
mount.ecryptfs $private $target -o ecryptfs_cipher=aes,ecryptfs_key_bytes=16,key=passphrase

Это развернет вашу фразу-пароль и добавит ее в связку ключей. Он также отобразит парольную фразу и правильную подпись FNEK, так что вы можете копировать / вставлять их по запросу mount.ecryptfs.

Сделайте файл исполняемым и запустите его, пока он находится в su:

chmod +x ecryptfs-fnek-helper.sh
./ecryptfs-fnek-helper.sh

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

sudo ecryptfs-add-passphrase --fnek
sudo mount -t ecryptfs /home/username /home/username -o key=passphrase,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_passthrough=n,,ecryptfs_enable_filename_crypto=yes

Если вы не зашифровали имена файлов, удалите связанные с паролем фразы / команды. Вы можете найти больше информации о mrying ecryptfs здесь. С уважением.

Другие вопросы по тегам