如何使用带有两个驱动器的全盘加密(SSD / HDD)安装18.04


12

我有一台笔记本电脑,并希望使用FULL DISK ENCRYPTION重新安装。我想在自己的SSD上安装操作系统,并在安装后将其移至第二个HDD。

  • 是否可以要求安装程序在安装时完全加密两个驱动器?
  • 如果没有,是否可以在将操作系统成功安装到SSD后手动加密第二个HDD,然后将/ home移至第二个HDD?如果是这样,我该怎么做?
  • 可以在启动时使用一个密码来解密两个驱动器吗?假设我必须在两个驱动器上都装有LUKS(以处理加密),然后在两个驱动器上拉伸(或链接)一个LVM ,我是否正确?这是我最不确定/如何做的部分。

谢谢

Answers:


11

如何使用两个驱动器加密Ubuntu 18.04 LTS安装:主SSD上的操作系统,辅助硬盘上的/ home

这是Ubuntu 18.04 LTS安装的完整磁盘加密指南。不要与/ home目录的加密混为一谈,我相信它已在安装过程中作为选项被删除。这些说明适用于Ubuntu 18.04 LTS,但应适用于16.04 LTS。

本指南假定您熟悉Ubuntu(Linux),可以通过USB密钥安装操作系统,或者至少了解如何执行此过程-如果不能,请找到可以并且可以通过的人。 本指南还假定您在开始此过程之前已备份了所有数据,因为在此过程中您将销毁所有驱动器上的所有数据。

你被警告了!

本指南主要是此处的两个步骤的结合(David Yates的博客文章)(https://davidyat.es/2015/04/03/encrypting-a-second-hard-drive-on-ubuntu-14- 10-post-install /)和Ask Ubuntu帖子(将主文件夹移动到第二个驱动器)。

首先,我们为什么要这样做?因为如果您拥有一台笔记本电脑或计算机上的其他敏感数据,并且这些数据被盗或丢失,则必须能够保护这些数据。您可能有法律责任保护数据。其次,许多(大多数)系统现在带有用于操作系统的小型SSD(快速)和用于数据的较大HDD(慢速)。第三,现在只加密/ home目录被认为是一个坏主意,因为它使您暴露出/ home被黑客入侵的可能性(不要问我怎么做,我不能),并且部分加密会减慢/ home目录的速度。系统在很大程度上。FDE需要较少的开销,因此对系统性能的影响最小。

第一部分:在主驱动器(通常是SSD)上安装Ubuntu 18.04 LTS

在较小的(通常是SSD)上安装Ubuntu 18.04 LTS,然后检查(i)擦除磁盘,(ii)加密安装和(iii)LVM管理。

安装选择的屏幕截图

这将导致加密的SSD,但不会接触第二个(通常是HDD)驱动器。我假设您的第二个驱动器是一个新的,未格式化的驱动器,但是在执行此过程之前,该驱动器上的内容并不重要。我们将销毁该驱动器上的所有数据。我们将使用Ubuntu中的软件包来准备驱动器(不确定是否一定要进行此准备,但这是我已经测试过的)。要为即将移动的/ home分区(文件夹)做好准备,应使用名为gParted的GUI工具对其进行格式化

sudo apt install gparted

打开gParted并导航到第二个HDD(仔细检查/ dev / sd?X)并删除任何和所有现有分区,然后使用ext4文件系统创建新的PRIMARY PARTITION 。您也可以标记它,但这不是必需的。选择“应用”。一个gParted已完成,关闭gParted,现在您可以在第二个驱动器上安装LUKS容器,然后对其进行格式化。在以下命令中,将sd?X替换为您的SECONDARY驱动器(而不是主驱动器)的名称,例如sda1

sudo cryptsetup -y -v luksFormat /dev/sd?X

然后,您需要解密新分区,以便可以使用ext4格式化它,这是Ubuntu首选的现代Linux文件系统。

sudo cryptsetup luksOpen /dev/sd?X sd?X_crypt
sudo mkfs.ext4 /dev/mapper/sd?X_crypt

如果您想将第二个HDD用作经常访问的常规硬盘驱动器(如将/ home分区移至该硬盘,这是第二部分的重点),则可以采用一种方法在启动时自动挂载和解密第二个驱动器,当计算机提示您输入主硬盘驱动器解密密码时。撇开:我对两个驱动器都使用相同的密码,因为我很迷信,并且设想使用两个不同的密码会出现更多问题。

首先,您需要创建一个密钥文件,该密钥文件用作辅助驱动器的密码,这样您就不必在每次启动时都键入(例如您的主硬盘驱动器加密密码)。

sudo dd if=/dev/urandom of=/root/.keyfile bs=1024 count=4
sudo chmod 0400 /root/.keyfile
sudo cryptsetup luksAddKey /dev/sd?X /root/.keyfile

创建密钥文件后,使用nano将以下行添加到/ etc / crypttab中

sudo nano /etc/crypttab

添加此行,保存并关闭文件(/ etc / crypttab)。

sd?X_crypt UUID=<device UUID> /root/.keyfile luks,discard

要使分区的UUID进入/ etc / crypttab文件,请使用以下命令(您需要使用sudo以便显示所有分区):

sudo blkid

您想要的值是/ dev / sd?X的UUID ,而不是dev / mapper / sd?X_crypt。另外,请确保复制UUID,而不是PARTUUID。

好的,在这一点上(已关闭并保存了/ etc / crypttab文件),您应该能够登录到Ubuntu安装(输入主驱动器解密密码),并且它应该同时解密主驱动器和辅助驱动器。您应该检查是否会发生这种情况,否则请停止。并解决问题。如果没有此功能,而您已经移动了/ home,那么您的系统将无法正常工作。

重新启动并检查是否确实是这种情况(菊花链解密)。如果辅助驱动器已自动解密,则当您选择“其他位置”时,第二个驱动器应显示在列表中并带有锁定图标,但该图标应被解锁

如果第二个驱动器自动解密(应如此),则继续进行第二部分,将第二个驱动器指定为/ home文件夹的默认位置(具有更大的空间)。

第二部分:将/ home分区移动到辅助驱动器( HDD)

我们需要为辅助驱动器创建一个挂载点,临时挂载新分区(辅助硬盘)并将/ home移至该驱动器:

sudo mkdir /mnt/tmp
sudo mount /dev/mapper/sd?X_crypt /mnt/tmp

假设/ sd?X/ home的新分区(如上所述)

现在,我们将您的/ home文件夹从主驱动器(SSD)复制到新的/ home位置,再复制到辅助驱动器(HDD)。

sudo rsync -avx /home/ /mnt/tmp

然后,我们可以挂载新分区的/ home

sudo mount /dev/mapper/sd?X_crypt /home

确保存在所有文件夹(数据)。

ls

现在,我们要使辅助驱动器上的新/ home位置永久不变,我们需要编辑fstab条目以将移动的/ home自动安装在辅助解密HDD上。

sudo nano /etc/fstab

并在末尾添加以下行:

/dev/mapper/sd?X_crypt /home ext4 defaults 0 2

保存并关闭文件。

重启。重新启动后,您的/ home应该驻留在新的辅助驱动器上,并且您应该有足够的空间容纳DATA。


如果在两个驱动器上的安装过程中都进行了手动分区并选择了FDE,会发生什么情况?
jarno

不确定,从未尝试过。在尝试执行关键任务单元之前,我会先在测试系统上对其进行测试。
安多·基斯

1
您可以在安装过程中进行手动分区,但是会遇到一些麻烦。首先,您必须在两个驱动器上手动设置LUKS加密。您需要确保确实创建了必要的未加密启动分区。然后,您必须在安装后进入,但在重新启动之前,重新挂载,chroot,更新/etc/cryptab文件。您还需要更新initramfs。我从未记录过确切的过程,但是我安装了手动分区和3个驱动器。相信我,安装后的迁移不再困难。
b_laoshi

我在第I部分中遇到问题:按照所有说明重新启动后,我可以看到第二个驱动器上带有解锁的锁定图标,但是当我单击它时,它显示“无法显示位置。您没有具有查看“ 8b ... b3”的内容所必需的权限。在LXDE中,驱动器打开,但是在尝试创建目录时显示“错误创建目录:权限被拒绝”。我该如何解决这种情况?
Nickolai Leschov '19

您是否检查了fstab文件中的UUID并确保其正确无误?您还必须确保更改密钥文件的权限。
安多·基斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.