我是 Ubuntu 新手。我在我的 Ubuntu 上创建了两个普通用户,并为他们提供了相同的密码。
现在我想检查密码是否相似,但我不知道在哪里查找或在终端中输入什么命令。我在哪里可以找到/etc/password
?
答案1
与系统用户身份验证相关的主要文件有两个:/etc/passwd
和/etc/shadow
。实际用户的密码存储为哈希文件中的版本shadow
。它们由crypt
函数。无法“解密”任何来自shadow
文件的密码,因为哈希是一种机制。
最简单的方法是:当用户输入密码时,系统会对其进行处理,并将其与文件中存储的哈希密码进行比较shadow
。但是当用户尝试“解密”来自文件的密码shadow
- 有超过一千种可能的结果。
相关问题:
/etc/passwd
每个用户帐户占一行,有七个字段,以冒号 (:
) 分隔。这些字段是:1.登录名;2. 可选加密密码;3. 唯一标识;4.性别识别号;5.用户名或评论字段;6.用户主目录;7.可选的用户命令解释器。
加密的密码字段可能为空,在这种情况下不需要密码...但是,
/etc/passwd
如果密码字段为空,某些读取文件的应用程序可能决定根本不允许任何访问。如果密码字段是小写的
x
,那么加密的密码实际上存储在shadow
文件中; 文件中必须有相应的行/etc/shadow
,否则用户帐户无效。如果密码字段是任何其他字符串,则它将被视为加密密码,如crypt
。 (来源:man passwd
)
/etc/shadow
- 影子密码文件 - 该文件包含系统帐户的密码信息和可选的时效信息。该文件的每一行包含 9 个字段,以冒号 (:
) 分隔。这些字段包括:1.登录名;2. 加密密码-请参阅
crypt
有关如何解释此字符串的详细信息;3.上次更改密码的日期;4.最短密码使用期限;5.密码最长使用期限;6.密码警告期;7.密码不活动期限;8.帐户到期日期;9. 保留字段。(来源:man shadow
)。