查询密码文件权限
ls -l /etc/passwd /etc/shadow
查询账号密码
查询用户
cat /etc/passwd
密码数据
cat /etc/shadow
详解
/etc/passwd 中一行记录对应着一个用户,每行记录又被冒号 (:) 分隔为 7 个字段,其格式和具体含义如下:
用户名: 口令: 用户标识号: 组标识号: 注释性描述: 主目录: 登录 Shell
注意:/etc/passwd 文件是所有用户都可读的
用户名: 口令: 用户标识号: 组标识号: 注释性描述: 主目录: 登录 Shell
注意:/etc/passwd 文件是所有用户都可读的
字段 | 含义 |
---|---|
1 | 用户名 |
2 | 用户的密码原来直接存储在第二字段,但是为了安全,最后专门有了 /etc/shadow 文件,现在默认用 x 替代 |
3 | 用户的 uid , 一般情况下 root 为 0,1-499 默认为系统账号,有的更大些到 1000,500-65535 为用户的可登录账号,有的系统从 1000 开始。 |
4 | 用户的 gid , linux 的用户都会有两个 ID , 一个是用户 uid,一个是用户组 id,在我们登录的时候,输入用户名和密码,其实会先到 /etc/passwd 查看是否有你输入的账号或者用户名,有的话将该账号与对应的 UID 和 GID (在 /etc/group 中) 读出来。然后读出主文件夹与 shell 的设置,然后再去检验密码是否正确,正确的话正常登录。 |
5 | 用户的账号说明解释 |
6 | 用户的家目录文件夹 |
7 | 用户使用的 shell,如果换成 /sbin/nologin/ 就是默认没有登录环境的。 |
/etc/shadow 文件,用于存储 Linux 系统中用户的密码信息,又称为“影子文件”。
/etc/shadow 文件只有 root 用户拥有读权限,其他用户没有任何权限,这样就保证了用户密码的安全性。
文件中每行代表一个用户,使用(:)作为分隔符,每行用户信息被划分为 9 个字段。每个字段的含义如下:
用户名:加密密码:最后一次修改时间:最小修改时间间隔:密码有效期:密码需要变更前的警告天数:密码过期后的宽限时间:账号失效时间:保留字段
/etc/shadow 文件只有 root 用户拥有读权限,其他用户没有任何权限,这样就保证了用户密码的安全性。
文件中每行代表一个用户,使用(:)作为分隔符,每行用户信息被划分为 9 个字段。每个字段的含义如下:
用户名:加密密码:最后一次修改时间:最小修改时间间隔:密码有效期:密码需要变更前的警告天数:密码过期后的宽限时间:账号失效时间:保留字段
字段 | 含义 |
---|---|
1 | 用户名 |
2 | 用户的密码加密字段 |
3 | 密码已经使用的日期(从 1970-01-01 开始,为什么?因为 unix1969 年发布雏形,基于当时对系统的考虑,就这样了) |
4 | 密码最少多少天之后可以修改 |
5 | 密码多少天之后必须修改(例子中 99999 就是表明可以一直不用修改密码) |
6 | 密码修改之前几天提醒我修改(例子中是 7 天之前) |
7 | 要是没有修改延长几天 |
8 | 无论怎样到这个时间过期 |
9 | 保留字段,目前无含义 |
正文完