web-dev-qa-db-ja.com

インストール後にディスク暗号化を有効にする

13.10 Saucyを実行しています。インストール中にディスク暗号化を有効にしなかった場合、事実上それを有効にする方法はありますか?

this を見つけました。これは、インストール時に暗号化を行う必要があることを示していますが、Fedoraのことでもあります。そこから実行する方法があれば、ライブディスクを簡単に起動できます。

57

ホームフォルダーの暗号化を有効にする場合は、これらのパッケージをインストールして使用する必要があります: ecryptfs-utils および cryptsetup 。また、管理者(Sudo)特権を持つ別のユーザーアカウントが必要になります。完全なドキュメントは次のとおりです。

インストール後にフルディスク暗号化を有効にしたい場合、今のところ簡単な答えはおそらく:no、できません。とにかく、あなたがこれに興味があるなら、あなたの質問は次のものと重複しています:

51
Radu Rădeanu

フォローアップの質問:フルディスクと単なる/ homeの利点と欠点は何ですか?

/ homeでの暗号化は、 ecryptfs と呼ばれるユーザー空間ファイルシステムを使用して行われます。それは非常によく行われ、デフォルトの認証システムにしっかりと組み込まれているため、ユーザビリティ上の欠点はありません:アカウントを入力するとき(リモートシェルまたはデフォルトのログイン画面から)、パスワードを使用してセキュアキーをアンラップします次に、ホームディレクトリ内のファイルをその場で暗号化/復号化するために使用されます(マウントされたファイルシステムは/ home/usernameに直接存在します)。ログアウトすると、/ home/usernameはマウント解除され、暗号化されたファイルのみがシステムに表示されたままになります(通常は/home/.ecryptfs/username/.Private/にあります)。ファイル名も暗号化されているため、これらはスクランブル/ランダムファイルの束のように見えます。唯一の情報漏洩は、ファイルサイズ、タイムスタンプ、およびファイル数です(ディスク全体の暗号化では、これらも非表示になります)。

システムが複数のユーザー間で共有される場合、これはフルディスク暗号化を追加することを決定したとしても、これは非常に便利な機能です。 ecryptfs)暗号化は、ログアウトしている限りオンです。

したがって、フルディスク暗号化とホーム暗号化は必ずしも相互に排他的ではありません。

さまざまなセキュリティニーズに応じて、可能なセットアップのリストを以下に示します。

  • フルディスク暗号化のみ:コンピュータを使用しているのがあなただけで、マシンがフルディスク暗号化のオーバーヘッドを処理できる場合(最新のデスクトップはすべて実行できます)ユーザーに気付かれず、ネットブックや古いラップトップがあまりない場合)完全なディスク暗号化を使用して、OS(/)と同じパーティションに家に置くことができます。
  • フルディスク暗号化AND HOME ECRYPTFS ENCRYPTION:PCが読み込まれている間にプライベートデータが読み込まれるのが心配な場合またはコンピューターを他のユーザーと共有する場合、/とは異なるパーティションにホームを持ち、フルディスク暗号化(つまりLUKSの暗号化)と共にecryptfsを使用できます。
  • ホームECRYPTFS暗号化のみ:外出中に誰かがシステムを改ざんすることをあまり心配していないが、個人データを安全に保ちたい場合次に、ディスク全体の暗号化をスキップして、ecryptfs(ホームの暗号化)を使用します。このシナリオの追加のボーナスは、ecryptfs-migrate-homeを使用するだけで、これが非常に簡単に セットアップ でもafterになったことです。また、これはいくつかのリリースを変更する前のデフォルトのUbuntuセットアップであり、フルディスク暗号化の可能性を追加しました。最新のデスクトップのほとんどは、汗をかかずにディスク全体の暗号化を処理でき、オフラインコードインジェクションに対するセキュリティの薄層を追加するため、インストーラーにディスク全体の暗号化が追加されました。ただし、ほとんどのユーザーにとっては、ecryptfsを使用して自宅を暗号化するだけで十分です。つまり、友人や一般的なラップトップの泥棒を個人データから遠ざけることです。さらに、適切な手段で組織を単独でターゲットにした場合、他の多くの偏執的な振る舞い(カーネルの保持など)を確立していない限り、完全なディスク暗号化またはホーム暗号化だけで大きな違いはありません常にあなたの上にある別のペンドライブで、ハードウェアの改ざん/キーロガーなどを常にチェックしています)

インストール中にディスク暗号化を有効にしなかった場合、事実上それを有効にする方法はありますか?

はい。現在LVMを使用しており、システム上にすべての暗号化されていないシステムファイルを暗号化されたLUKSパーティションにコピーするのに十分なスペースがある場合、より簡単になります。 LVMを使用しているかどうか、そして今のところecrypfsを使用するのではなく、次の新規インストールまでディスク全体の暗号化の手間を省くのかどうかわからないので、現時点では詳細を説明しません。

19
user824924

さて、すべての重要なディレクトリとインストールされたソフトウェアのbackupを作成できます。バージョンの競合を避けるため、13.10が完全に更新されていることを確認してください。通常、バックアップは次のようになります。

その後、システムを暗号化してからreinstallします。完全に更新します。次に、バックアップを暗号化されたシステムに移動し、以前のバージョンのすべてのソフトウェアをインストールします。

バックアップを元に戻すとき、暗号化に重要なファイルを上書きしないようにしてください(例:/etc/fstab/etc/cryptab、grubに関連するもの、/bootにあるものは置き換えないでください。バックアップされたファイル)。

3
con-f-use

簡単な答え:いいえ。

複雑な答え:

ディスクまたはパーティションを暗号化すると、そのディスクまたはパーティションに現在あるすべてのものが消去されるため、ディスクを暗号化するには、ディスクの内容も削除する必要があります。開始する前に、適切なデータのバックアップを作成する必要があります。明らかに、これは完全なディスク暗号化を使用するためにシステムを再インストールする必要があることを意味し、他の方法はありません。これは、ランダムデータがディスク全体に書き込まれ、データの回復がより困難になるためです。

しかし、最近では、ルートパーティションを暗号化する必要はありません。何かが配線された場合、データを復元する可能性がないため、システムから外れます個人情報のみを暗号化することを検討する必要があります。

関連する質問を参照してください インストール後にディスク全体を暗号化する方法?

0
Braiam

動作するUbuntu 16.04から、インストール後のルートパーティションの暗号化に成功しました。ルートパーティションには/ boot以外のすべてが含まれています。別のリムーバブルusbに/ bootを置きます。特に、Ubuntu 18にアップグレードする前にこれを行いましたが、アップグレードは暗号化されたディスクバージョンで正常に機能しました。

暗号化は「所定の場所で」行われませんでしたが、新しいセットアップが機能するまで動作バージョンを上書きしたくないので、私には問題ありませんでした。

正しい手順を実行することは非常に簡単で高速です。 (正しい手順を見つけることは、私がいくつかの誤ったリードに従ったため、非常に時間がかかりました。)

アウトライン

  1. ライブLinux USBディスクを作成します-永続性を有効にすると便利です。そのライブUSBディスクで起動します。
  2. 空のパーティションにluks暗号化ボリュームグループを作成します。 (私の場合、元のlinuxと同じディスクにありましたが、別のディスクにすることもできます。)/(ルート)を作成し、その暗号化パーティションに論理ボリュームをスワップします。コピーされたlinuxに関する限り、これらは仮想パーティションとして機能します。
  3. 古いルートから新しいルートにファイルをコピーします。
  4. リムーバブルブートディスクとして機能する別のUSBをセットアップしてパーティションを作成します。
  5. 新しいルートにいくつかのファイルを設定し、魔法をかけ、新しいルートにchrootしてから、chrootされた新しいルート環境からブートディスクにgrubをインストールします。

詳細

1-ライブLinux USBディスクで起動-永続性を有効にすると便利です。

Unetbootinを使用して、UsbにUbuntu 16をインストールしました。 GUIでは「永続性」を指定できますが、永続性を機能させるには別の手順も必要です。次のように/boot/grub/grub.cfgを変更して--- persistentを追加します。

menuentry "Try Ubuntu without installing" {
    set gfxpayload=keep
    linux   /casper/vmlinuz  file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash --- persistent
    initrd  /casper/initrd
}

ライブUSBで起動します

2-空のパーティションにluks暗号化ボリュームグループを作成します。 /(ルート)を作成し、その暗号化されたパーティションに論理ボリュームをスワップします。

暗号化される未使用のパーティションが/dev/nvme0n1p4であると仮定します。

オプションで、暗号化とフォーマットの前に非表示にするパーティションに古いデータがある場合、パーティションをランダムにワイプする可能性があります。 ここの説明を参照

dd if=/dev/urandom of=/dev/nvme0n1p4 bs=4096 status=progress

暗号化を設定します。

cryptsetup -y -v luksFormat /dev/nvme0n1p4

パスワードを設定するように求められます。

cryptsetup luksOpen /dev/nvme0n1p4 crypt1

パスワードを入力するように求められます。 crypt1はユーザーが決めた任意の名前であることに注意してください。次に、ボリュームとフォーマットを作成します。

pvcreate /dev/mapper/crypt1
vgcreate crypt1-vg /dev/mapper/crypt1

lvcreate -L 8G crypt1-vg -n swap
mkswap /dev/crypt1-vg/swap

lvcreate -l 100%FREE crypt1-vg -n root
mkfs.ext4 /dev/crypt1-vg/root

これらのユーティリティを使用して、ボリュームを表示し、階層を理解します。

pvscan
vgscan
lvscan
ls -l /dev/mapper
ls -l /dev/crypt1

-古いルートから新しいルートにファイルをコピー

mkdir /tmp/old-root 
mount /dev/ubuntu-vg/root /tmp/old-root/
mkdir /tmp/new-root
mount /dev/crypt1-vg/root /tmp/new-root/
cp -a /tmp/old-root/. /tmp/new-root/

umount /tmp/old-root
umount /tmp/new-root

cp -a ...はアーカイブモードでコピーし、すべてのファイルモードとフラグを保持します。

4-リムーバブルブートディスクとして機能する別のUSBをセットアップしてパーティションを作成します。

これにはgpartedを使用しました。 2つのパーティションをセットアップします。最初のパーティションはvfatで、2番目のパーティションはext2です。いずれも512 MBでしたが、これよりも少なくなる可能性があります。デバイス/dev/sdfと想定します。

# The first partition: (will be /dev/sdf1)
Free space preceding (leave default value)
New size 512 MiB
Free space following (leave default value)
Create as: Primary Partition
Partition Name: (leave)
File System: fat32
Label: (leave)

# The second partition: (will be /dev/sdf2)
Free space preceding (leave default value)
New size 512 MiB
Free space following (leave default value)
Create as: Primary Partition
Partition Name: (leave)
File System: ext4
Label: (leave) 

5-新しいルートにいくつかのファイルを設定し、魔法をかけ、新しいルートにchrootしてから、chrootされた新しいルート環境からブートディスクにgrubをインストールします。

後で使用するためにいくつかのUUIDを見つけます。次のコマンドからの出力に注意してください。

blkid /dev/sdf1
blkid /dev/sdf2
blkid /dev/nvme0n1p4

ルートパーティションとブートパーティションをマウントする

Sudo mount /dev/mapper/crypt1--vg-root /mnt
Sudo mount /dev/sdf2 /mnt/boot
Sudo mount /dev/sdf1 /mnt/boot/efi

ファイルのセットアップ/mnt/etc/fstab

/dev/mapper/crypt1--vg-root /               ext4    errors=remount-ro 0       1
/dev/mapper/crypt1--vg-swap none    swap    sw              0       0
UUID=[uuid of /dev/sdf2] /boot           ext2    defaults        0       2
UUID=[uuid of /dev/sdf1]  /boot/efi       vfat    umask=0077      0       1

ここで、「[uuid of ...]」は単なる文字と数字とハイフンの組み合わせです。

ファイルを作成します/mnt/etc/cryptab

# <target name> <source device>     <key file>  <options>
crypt1 UUID=[uuid of /dev/nvme0n1p4] none luks,discard,lvm=crypt1--vg-root

ルートディレクトリ環境に入るにはいくつかの魔法が必要です。

Sudo mount --bind /dev /mnt/dev
Sudo mount --bind /proc /mnt/proc
Sudo mount --bind /sys /mnt/sys
chroot /mnt

grubで起動USBディスクをセットアップします:

apt install --reinstall grub-efi-AMD64
grub-install --efi-directory=/boot/efi --boot-directory=/boot --removable
update-initramfs -k all -c
update-grub

これで、新しく作成したUSBブートディスクを使用して再起動および起動できるようになります。

トラブルシューティング-

(a)apt install --reinstall grub-efi-AMD64コマンドを使用するには、ネットワークに接続する必要があります。ネットワークは接続されているがDNSに障害がある場合は、試してください

echo "nameserver 8.8.8.8" | Sudo tee /etc/resolv.conf > /dev/null

(b)initramfsを呼び出す前に、元のLinuxで使用されている現在のvmlinuz...ファイルが新しいルートディレクトリに存在する必要があります。そうでない場合は、見つけてそこに置きます。

(c)grub-installコマンドは、デフォルトで、mountedでなくても検出できる他のすべてのLinuxディスクを検索し、新しいブートのブートメニューにそれらを配置します。 USB。通常、これは望ましくないため、この行を/boot/default/grub.cfgに追加することで回避できます。

GRUB_DISABLE_OS_PROBER=true

注:暗号化キーを含むテキストファイルをリムーバブルブートUSBに追加できます。

0
Craig Hicks