Ubuntu Linux 会将加密密钥保存在硬盘的什么位置?

Ubuntu Linux 会将加密密钥保存在硬盘的什么位置?

我的加密硬盘西部数据WD5000BPVT运行 Ubuntu 14.04 时崩溃了,负责数据恢复的人询问加密密钥存储在硬盘的哪个位置,以便他可以集中精力修复该区域。他还询问了加密类型和其他信息,但我想我可以在其他问题中找到这些信息。

他还告诉我,我应该尝试找到原始设备,因为它可能用那台笔记本电脑的序列号加密。对我来说,非常重要的是,这家伙不会发现这个硬盘上有什么,因为这是一个加密货币钱包,他可以不留痕迹地窃取它。

我让他制作磁盘映像是否不合理?我应该找一个新的恢复人员吗?

答案1

如果你在无处不在安装过程中,你的磁盘已加密卢克斯

在 LUKS 分区中,标题是最多前 2 兆字节 ( 2MiB)。如果您无法恢复标头,则您无法恢复数据,因为标头包含解密分区其余部分的密钥。

要获取该密钥,您需要一个有效的密码或密钥文件来匹配八个密钥槽之一。

我建议你不要把密码告诉别人,尤其是当你似乎不信任数据恢复技术人员的时候。他似乎也不知道加密是什么:它不是用笔记本电脑的序列号加密的;你使用密码解密

备份 LUKS 头文件和分区

您应该对磁盘进行映像处理,并保留 LUKS 标头的额外副本。您可以使用以下命令轻松备份 LUKS 标头:

cryptsetup luksHeaderBackup /dev/sda2 --header-backup-file /media/sda2.luksHeaderBackup

/dev/sda2LUKS 分区在哪里,以及/media/sda2.luksHeaderBackup您想要保存头备份的地方。

要恢复 LUKS 分区,你可以使用gddrescue

ddrescue -Svv /dev/sda2 /somewhere/else/rescue.img /somewhere/else/ddrescue.log

/somewhere/else到具有比 大小更多的可用空间的挂载的路径在哪里/dev/sda2

gddrescue的地图文件/somewhere/else/ddrescue.log还可以帮助您识别硬盘中哪些区域无法读取。

读取复制的图像

要解锁/somewhere/else/rescue.img,请使用以下命令:

cryptsetup luksOpen /somewhere/else/rescue.img rescue

输入您的密码,cryptsetup将会把解锁的分区映射到/dev/mapper/rescue

您现在可以安装/dev/mapper/rescue

mount /dev/mapper/rescue /mnt

并且您的文件将会在 中/mnt


需要考虑的极端情况:完整磁盘映像而不是分区映像

如果您决定制作完整磁盘而不是仅制作分区的映像,则需要映射完整磁盘映像内的分区。

您可以使用以下选项之一来执行此操作(尽管还存在其他选项):

# Option 1
kpartx -av /somewhere/else/rescue.img

# Option 2
LODEVICE="$(losetup -f)"
losetup -P "$LODEVICE" /somewhere/else/rescue.img

然后您可以使用以下命令找到您的 LUKS 分区:

blkid /dev/loop* | grep crypto_LUKS

如果/dev/loop0p2是您的 LUKS 分区,您应该解锁/dev/loop0p2而不是/somewhere/else/rescue.img

相关内容