Linux如何验证登录密码?

Linux如何验证登录密码?

我想知道Linux中的密码验证是如何工作的。

我知道密码以哈希形式存储在/etc/shadow文件中,用户信息也存储在/etc/passwd文件中。我的理解是这样的:

  1. 选择您要登录的用户决定系统应检查的用户名。
  2. 当您输入密码并按回车键时,系统将转到该/etc/shadow文件并找到与用户名对应的行。
  3. 从第 2 步开始,它获取实际密码的哈希值。然后它生成输入密码的哈希值并比较它们。如果找到匹配项,瞧。否则,错误消息。

我的理解正确吗?

答案1

是的。你是对的。每个步骤也可以分为小任务,但您需要描述整体算法。

请阅读几篇详细描述登录过程的文章。[1] [2]

请注意,这仅涉及明文密码,未提及 PAM 系统。[3]

相关内容