/etc/passwd 应该是全球可读的有什么理由吗?这不像密码哈希不应该被公开,我只是想知道为什么。
答案1
/etc/passwd
有时称为用户数据库。这应该给我们一个线索,说明为什么每个人都需要阅读它。任何检查文件元数据的实用程序都需要能够读取/etc/passwd
(和/etc/group
),以便能够将内核及其子系统使用的数字 ID 解析为我们所依赖的人类友好名称。需要查找您的主目录的工具(邮件传递代理等)会在 中查找信息/etc/passwd
,而inet
小型服务器则fingerd
在 中查找您的详细信息/etc/passwd
。
正如其他地方所指出的,该文件中没有特别敏感的数据,因为现代系统将密码散列放在影子密码文件中,该文件只能由 root 读取。
答案2
/etc/passwd
不包含密码哈希(所以这不是一个大问题)。/etc/shadow
包含密码哈希值,并且只能由 root(和影子组)读取