使用 LUKS 接收“此密码短语无可用密钥”

问题描述

我的笔记本电脑有一个加密磁盘。在 apt upgrade 和几个小时后强制关机后,我的密码不再解密我的磁盘。

我从 debian live usb 记忆棒启动并尝试了几件事:

  1. 我可以使用来自实时操作系统的密码解密分区吗?

    enter image description here

    答案:没有。
  2. 键盘布局有问题吗?

    enter image description here

    答案:没有。
  3. 分区还是加密的吗?

    enter image description here

    答案:是的,而且还有一个键槽。
  4. 查看 hexdump 输出时是否有可见的问题?

    enter image description here

    答案:没有。
  5. 查看 hexdump 配置输出时是否有可见的问题?

    enter image description here

    答:除了一些博客文章说 1000 以上的所有字符都应该是随机字符这一事实之外:否。

我没有备份我的 LUKS 标头。我的密码有效了一年多。 如何访问或挽救我的数据?

提前致谢, 卢克

解决方法

也许自从您提出问题以来已经过去了太多时间,但是:

apt 升级和几个小时后强制关机后,我的密码不再解密我的磁盘。

这应该不是问题。我不得不在不同的设备上做很多事情。是的,这仍然有很小的可能性会损坏某些东西,但 LUKS 非常强大。

  1. 我可以使用来自实时操作系统的密码解密分区吗?

是的,这绝对有可能!自己做过几次。

  1. 键盘布局有问题吗?

可能。在终端窗口中输入您的密码以检查它是否是您的密码,然后使用 cryptsetup 命令。并重新考虑您使用其他布局加密驱动器的可能性。试着记住你是如何加密它的——在全新的系统安装过程中;通过终端在您的工作系统上;用工具;等等。

密码字符集:有些人对此有困难 升级发行版时。强烈建议只使用 95 ASCII 表的前 128 个字符中的可打印字符, 因为它们将始终具有相同的二进制表示。其他 根据系统配置,字符可能有不同的编码 并且您的密码不能使用不同的编码。

这句话来自Gitlab cryptsetup

  1. 该分区仍然是加密的吗?

是的。确保您使用带有 luks version2 的最新 live cd。

我没有备份我的 LUKS 标头。

看起来您不需要备份 LUKS 标头。

编辑:一些额外的想法: 你是怎么加密的?是/home这样的特殊分区吗?

  • 如果分区是您的 /home 并且您进行了加密设置 在系统安装期间,您通常通过以下方式打开分区 您的用户密码。但这不是真正的密码 分区,因为会有一个用于打开分区的密钥文件。 该文件在 /etc/crypttab 中定义。
  • 如果您能够打开您的分区或设置一个新分区,请确保您
    • 不仅要设置一个密码!在另一个密钥槽中添加另一个密码或密钥文件。

如果您确定输入的密码正确,则有 相应的键槽已损坏的可能性。没有 恢复损坏的键槽的方法,除了从头备份...

这句话也出自Gitlab cryptsetup。也许你会在那里找到更多需要的信息。

  • 完成密码短语后,请执行 HEADER-BACKUP!这简单。备份很小,大多数时候你不需要它——我在过去的 10 年里都不需要它,还有很多硬盘、USB 记忆棒等!
    • 请勿将标头备份存储在您的加密硬盘/分区中!
,

您可以尝试为您的 luks 容器创建一个新的 master key

## Requires vim-common

cryptsetup luksAddKey /dev/sda3 --master-key-file <(dmsetup table --showkey /dev/mapper/foobar | awk '{print$5}' | xxd -r -p)

这将创建一个用于解锁 luks 容器的新密码,如果有效,那么您可以删除之前的密码并继续使用它。