ecryptfs - passwd 实用程序如何更新非管理员密码更改的哈希值?
ecryptfs - How does the passwd utility update the hash for non-admin password changes?
我一直在尝试 ecryptfs
通过 ecryptfs-mount-private
和 ecryptfs-umount-private
手动 mount/unmount 私人商店。当我以配置了 ecryptfs
的用户身份登录时(即:用户名是 bob),它会询问我的 Linux 用户帐户的登录密码为了挂载私人商店。如果我在通过 passwd
命令行实用程序登录系统时更改密码,ecryptfs
需要我的新密码才能安装私有存储。
如果我以 root
用户身份登录(即:系统管理员)并通过 sudo passwd bob
更改 bob 帐户的密码,然后登录进入 Bob 的帐户,当我使用以 root
.
登录时设置的新密码时,ecryptfs-mount-private
将失败
我的理解是 ecryptfs
使用用户密码的哈希生成另一个 hash/key 用于 "wrap" 私人存储中的加密文件。但如果是这样,为什么当我以实际用户身份登录时更改密码时 "just work",但当我以 root 身份重置密码时却没有?
到目前为止,我最好的猜测是可能某些设置被传递给 passwd
实用程序,导致它在完成后成为 运行 辅助脚本。有谁知道 ecryptfs
是如何工作的?
谢谢!
当用户更改自己的密码时,将调用 PAM (here or here) 以使用新的用户密码重新包装 eCryptfs 密码,这样您就可以在下次登录时解密您的家。
不知何故,我不知道逐行的确切细节,但我想我在 /etc/pam.d/common-password
中发现了可疑行:
password optional pam_ecryptfs.so
如果 root 尝试解包 eCryptfs 密码应该会失败,因为它没有您的用户登录密码。 eCryptfs 还明确告诉您在创建加密主页(可能是任何加密的私人文件夹)时备份实际的 eCryptfs 密码,因为如果 eCryptfs 包装的密码文件出现问题,或者您忘记了登录密码,文件将有效丢失。
如果 root 可以随时通过更改您的登录密码来更改您的 eCryptfs 密码,那么除了 root 之外,您将没有真正的安全保障。
我一直在尝试 ecryptfs
通过 ecryptfs-mount-private
和 ecryptfs-umount-private
手动 mount/unmount 私人商店。当我以配置了 ecryptfs
的用户身份登录时(即:用户名是 bob),它会询问我的 Linux 用户帐户的登录密码为了挂载私人商店。如果我在通过 passwd
命令行实用程序登录系统时更改密码,ecryptfs
需要我的新密码才能安装私有存储。
如果我以 root
用户身份登录(即:系统管理员)并通过 sudo passwd bob
更改 bob 帐户的密码,然后登录进入 Bob 的帐户,当我使用以 root
.
ecryptfs-mount-private
将失败
我的理解是 ecryptfs
使用用户密码的哈希生成另一个 hash/key 用于 "wrap" 私人存储中的加密文件。但如果是这样,为什么当我以实际用户身份登录时更改密码时 "just work",但当我以 root 身份重置密码时却没有?
到目前为止,我最好的猜测是可能某些设置被传递给 passwd
实用程序,导致它在完成后成为 运行 辅助脚本。有谁知道 ecryptfs
是如何工作的?
谢谢!
当用户更改自己的密码时,将调用 PAM (here or here) 以使用新的用户密码重新包装 eCryptfs 密码,这样您就可以在下次登录时解密您的家。
不知何故,我不知道逐行的确切细节,但我想我在 /etc/pam.d/common-password
中发现了可疑行:
password optional pam_ecryptfs.so
如果 root 尝试解包 eCryptfs 密码应该会失败,因为它没有您的用户登录密码。 eCryptfs 还明确告诉您在创建加密主页(可能是任何加密的私人文件夹)时备份实际的 eCryptfs 密码,因为如果 eCryptfs 包装的密码文件出现问题,或者您忘记了登录密码,文件将有效丢失。
如果 root 可以随时通过更改您的登录密码来更改您的 eCryptfs 密码,那么除了 root 之外,您将没有真正的安全保障。