在通过帐号和密码登录Linux主机时,系统内部做了什么呢?
- 首先在/etc/passwd中寻找帐号是否存在,如果不存在,则跳出;如果存在,则读出uid和gid(在etc/group中),并且读取帐号的主文件夹和shell设置。
- 接下来是核对密码是否正确。Linux系统进入/etc/shadow文件同听过帐号和uid查找到密码,然后核对与输入的密码是否一致。
- 如果前两布正确,就能进入到shell控制管理阶段了。
了解到上述过程后,发现登录主机时主要用到/etc/passwd和/etc/shadow这两个文件,所以这两个文件必须让系统读取,许多系统攻击者将特殊帐号写到/etc/passwd中。如果要备份linux系统,那么这两个文件也一定要备份。
既然这两个文件那么重要,那么就来解析这两个文件:
/etc/passwd的文件结构
文件结构:每一行都代表一个账号,有几行就代表几个帐号,不过,里面包含了系统运行所必须的帐号,例如bin,daemon,adm,nobody等,不能随意删除这些帐号,文件部分内容如下:
但是每一行的每一个