如何手动更改影子文件?

如何手动更改影子文件?

我有一个 Linux 系统,我创建了 20 个用户,之后我创建了一个哈希并将其导入到影子文件中,而不是其中一个(手动)。我这样做是因为一些教育方面的事情:)

user12:.rAuPMqtz7dZzHdfQMLJzum6vPYKJynmE29reN27MG/AsAHHt6a.1ZeyEkoo6xEJIzepKMyLai/:16607:0:99999:7:::

然后我保存了阴影并测试了用户。它不起作用。为什么?但是当我使用时它可以工作passwd user12

另一个问题是,当我手动更改影子时(即使一个空格或回车键),我所有的用户都无法通过 ssh 连接。他们看到 permission denied。为什么?

我复制粘贴了的内容shadow,但又不起作用了。为什么?在我复制之前,它是可以的。只是打开并保存它就不起作用了?

答案1

这没有有效的密码哈希:

user12:.rAuPMqtz7dZzHdfQMLJzum6vPYKJynmE29reN27MG/AsAHHt6a.1ZeyEkoo6xEJIzepKMyLai/:16607:0:99999:7:::

在 Linux 上,密码哈希算法为 DES、MD5、SHA-256 和 SHA-512(参见man 3 crypt,不包括河豚),并且您提供的密码哈希长度与其中任何一个输出的长度都不匹配(分别为 13、22、43 和 86 个字符,而您的长度为 75 个字符)。而且,它没有盐或算法标识符。系统将尝试将其读取为 DES 哈希值,前两个字符是盐 - 但谁知道那时什么密码会匹配它?

相关内容