web-dev-qa-db-ja.com

Ubuntu 11.10では、起動時にパスフレーズを1つだけ入力することで、LUKS / LVMで暗号化された2台のハードディスクを復号化できますか?

ここで私が持っている構成:-2台のハードドライブ-最初の1台はLUKSとLVMを使用して暗号化されています。暗号化された2台目のハードドライブをボリュームグループに追加したいと思います。正常にインストールして暗号化しました。しかし、起動するときは、両方のハードドライブを復号化するために2つのパスフレーズを入力する必要があります。

1つだけ使用する方法はありませんか?

8
AlBundy

私はついに、1つのパスワードだけを入力し、すべての物理ディスクを暗号化するトリックを見つけました。

最初のものをパスフレーズで暗号化し、2番目のものを最初のハードドライブ(/ root/mykeyfile)に保存したキーファイルを使用して暗号化します。

そして、/ etc/crypttabファイルの正しい行で、それはトリックを行います。

/ etc/crypttabを更新します

sda5_crypt UUID = fb07f1e8-a569-4db9-9fd7-fc1994e093b5 none luks

sdb1_crypt UUID = 4c0687f0-d7af-4f2e-9c57-5ca8e909d492/root/mykeyfile luks

4
AlBundy

Ubuntuでは、ルートから派生したキーを他のファイルシステムの追加キーとして使用することができます。これには、他のドライブのキーをファイルシステム自体から除外するという利点があります。

これを行う前に、まず、/ tmpがramのみにマウントされていることを確認してください。この変更にはシングルユーザーモードをお勧めします。

mount -t ramfs none /tmp

次に、派生キーをエクスポートできます。

# replace vda5_crypt with the cryptsetup name of your root luks
# have a look in /dev/mapper or 'pvdisplay' to find it...
/lib/cryptsetup/scripts/decrypt_derived vda5_crypt > /tmp/key

そして、それを他のデバイスに追加します。

# use your own disks here instead of sdb1 sdc1 sdd1 etc
cryptsetup luksAddKey /dev/sdb1 /tmp/key
cryptsetup luksAddKey /dev/sdc1 /tmp/key
cryptsetup luksAddKey /dev/sdd1 /tmp/key
rm /tmp/key

これにより、ルートのロックが解除されると、ubuntu initスクリプトが派生キーを使用して残りのブロックデバイスのロックを解除し、/ dev/mapperで同様に使用できるようになります。/etc/crypttabエントリが必要かどうかはわかりません。最初に入力せずに試してください。表示されない場合は、キーなしでcrypttabに入れると、ロックが解除されます。

(私はこれのどれもテストしていません。)

0
sneak