更改密码后,如何重新获得对加密主目录的访问权限?

sk *_*que 12 ecryptfs 12.04

在 12.04 LTS x64 上,我通过用户帐户工具更改了我的用户密码。之后,我无法使用新密码再次登录,因为我的主目录已加密,并且上述错误不允许使用新登录密码解密主目录。
解密主目录的密码保存在我加密的主目录的文件夹中。

有没有办法恢复这个密码并解锁我的主目录?
没有单独的解密密码记录。我仍然有一个可以访问的正常访客帐户,但我不清楚我是否可以在以访客身份登录且没有解密密码的情况下以某种方式访问​​加密用户主目录中的文件。请尽快指教。

Xen*_*050 7

如果您正在使用ecryptfs(这是加密主文件夹的标准方法,可能是这样),那么当您更改用户密码时,您将失去对加密主目录的自动访问权限(如您所见)。大多数更改密码的常规方法(如passwd)不应该发生这种情况,他们应该使用 PAM 自动更新加密(但如果管理员更改/重置密码,则不会发生这种情况,否则将不安全)。

ecryptfs 实际上建议您保留它使用的实际密码的备份副本(它不是您的登录密码,但它已加密或“包装”了您的登录密码),以防万一您所指的包装密码文件发生问题。

但是使用ecryptfs-unwrap-passphrase您应该能够找出实际的 ecryptfs 密码。

使用ecryptfs-rewrap-passphrase您可以使用旧用户密码来“解开” ecryptfs 密码,然后用新用户密码“重新包装”它。这是它man页面上的一个剪辑:

NAME
   ecryptfs-rewrap-passphrase - unwrap an eCryptfs wrapped passphrase, re?
   wrap it with a new passphrase, and write it back to file.

SYNOPSIS
   ecryptfs-rewrap-passphrase [file]

   printf "%s\n%s" "old wrapping passphrase" "new wrapping  passphrase"  |
   ecryptfs-rewrap-passphrase [file] -
Run Code Online (Sandbox Code Playgroud)

但是我会在对它们运行之前制作任何文件的备份副本。(ps。你不需要使用printf...格式,ecryptfs-rewrap-passphrase [file]如果你不介意输入密码,它就可以运行)。

你可以运行ecryptfs-recover-private只挂载它找到的任何 ecryptfs 加密的私人文件夹,然后备份/复制等。

有关更多信息,请参阅所有工具man ecryptfsman页面ecryptfs-...。archlinux 的 wiki 在https://wiki.archlinux.org/index.php/ECryptfs 上有一些非常好的信息