使用 LUKS 加密分区:加密 Linux 分区指南

让我们了解使用 LUKS 加密分区磁盘加密是一种保护任何存储设备上的机密数据和敏感数据的方法,方法是将数据转换为不可读的文本(加密),以便只有授权用户才能解密和读取原始数据。

这种保护数据的方法比简单地在笔记本电脑上设置密码要强大得多,因为它实际上会更改数据本身,而不是仅仅将其放在密码后面。

什么是LUKS?

Linux 统一密钥设置 (LUKS) 是 2004 年针对 Linux 发布的磁盘加密规范。

由于 LUKS 是一种标准方法,而不是外部软件,因此它的实现在所有发行版、分区甚至其他块设备(如 USB 驱动器)中都是统一的。

它使用多种密码,例如 aes-cbc-essiv:sha256aes-xts-plain 对数据进行加密。 具体的密码取决于用例。

使用 LUKS 逐步加密分区

我们将使用 cryptsetup 命令。 例如,我将加密我的 USB 驱动器。 但是这种方法可以在 Linux 中的任何空分区上使用。

注意:确保您的分区中没有任何数据,您将要加密的 USB,因为在此过程中所有数据都将丢失

第一步:确定要格式化的分区。

您可以使用以下命令列出所有文件系统。

df -hl 

由于我的 USB 驱动器安装在 /dev/sdb1,我将格式化该分区。 如果您格式化主硬盘分区,这通常类似于 /dev/sdaX

第二步:卸载分区

sudo umount /dev/sdb1   

将 /dev/sdb1 替换为我们在上一步中确定的分区名称。

第三步:格式化分区

在确定分区没有任何重要数据之前不要运行

sudo wipefs -a /dev/sdb1 

第 4 步:使用 LUKS 格式化分区

现在我们将在这个格式化的分区上使用 Cryptsetup 来创建一个加密的 LUKS 分区。 为此,请运行以下命令

sudo cryptsetup luksFormat /dev/sdb1 

运行此程序后,您将被要求输入密码。 该密码是您随时访问设备的方式。 所以一定要记住密码。

第五步:打开分区

现在您的分区在密码后面有一个 LUKS 分区,但它现在还不可见。

Luksopen 1 之前的 Lsblk 使用 LUKS 加密分区

要访问加密的 Luks 驱动器,请执行以下命令:

sudo cryptsetup luksOpen /dev/sdd1 map_point 

在这里,您可以将 map_point 替换为您喜欢的任何名称,分区将被映射到。

Luksopen 输出

现在我们可以看到,lsblk 显示了加密的 Luks 分区(map_point)。

第 6 步:在 Luks 分区中创建一个文件系统并挂载它。

现在要将文件存储在加密分区中,我们需要一个文件系统。

我将使用以下命令在分区中创建 exFAT 文件系统。

sudo mkfs.exfat /dev/mapper/map_point -n volume_name 

您可以选择任何其他文件系统。 对于 ext4,使用 mkfs.ext4,对于 FAT32,使用 mkfs.vfat,依此类推。

现在我们有了一个文件系统,我们可以将它挂载到一个位置来访问内容。

mkdir /dev/luks_mount sudo mount /dev/mapper/map_point /mnt/luks_mount 

我们完成了实施。 让我们看看每次需要访问数据时需要做什么。

如何使用 LUKS?

如果您加密的分区位于 USB 驱动器上,则每次插入 USB 驱动器时,系统都会提示您输入密码以访问该分区。 输入密码后分区会自动挂载,可以像普通U盘分区一样访问。

Luks 密码提示

如果您不使用桌面环境,您将不会收到 GUI 提示,并且必须使用以下命令安装分区本身。

sudo mount /dev/mapper/map_point /mnt/luks_mount ls /mnt/luks_mount #Now you can access the partition at /mnt/luks_mount #After you are done unmount and close the partition. sudo umount /mnt/luks_mount sudo cryptsetup luksClose volume_name 

结论

我们已经学习了如何使用 Linux 统一密钥设置加密您的分区并保护您的敏感数据不被不受欢迎的用户使用。

与所有事情一样,确保有一个强大的密码短语、大写字符、小写字符、数字和特殊字符很重要。

要了解有关 LUKS 的更多信息,请访问 Redhat 论坛。 继续探索!