1、用户信息文件/etc/passwd
注: 命令 ll = ls -l
-
用户管理简介
- 越是对服务器安全性要求高的服务器,越需要建立合理的用户权限等级制度和服务器操作规范。
- 在Linux中主要是通过用户配置文件来查看和修改用户信息。
-
/etc/passwd
- 第1字段:用户名称
- 第2字段: 密码标志
- 第3字段:UID(用户ID)
- 0: 超级用户
- 1-499:系统用户
- 500-65535: 普通用户
- 第4个字段:GID(用户初始组ID)
- 第5个字段: 用户说明
- 第6个字段: 家目录
- 普通用户:/home/用户名/
- 超级用户:/root/
- 第7个字段:登录之后的Shell
-
初始组和附加组
- 初始组:就是指用户一登录就立刻拥有这个用户组的相关权限,每个用户的初始组只能有一个,一般就是和这个用户的用户名相同的组名作为这个用户的初始组。
- 附加组:指用户可以加入多个其他的用户组,并拥有这些组的权限,附加组可以有多个。
-
Shell是什么
- Shell是Linux的命令解释器。
- 在/etc/passwd当中,除了标准Shell是/bin/bash之外,还可以写如/sbin/nologin。
2、影子文件/etc/shadow
- 影子文件/etc/shadow
- 第1字段:用户名
- 第2字段: 加密密码
- 加密算法升级SHA512散列加密算法。
- 如果密码是"!!“或”*"代表没有密码,不能登录。
- 第3字段:密码最后一次修改日期
使用1970年1月1日作为标准时间,每过一天时间戳加1。 - 第4字段:两次密码的修改间隔时间(和第3字段相比)
- 第5字段:密码有效期(和第3字段相比)
- 第6字段:密码修改到期前的警告天数(和第5字段相比)
- 第7字段:密码过期后的宽限天数(和第5字段相比)
- 0:代表密码过期后立即失效
- -1:则代表密码永远不会失效
- 第8字段:账号失效时间
要用时间戳表示 - 第9字段:保留
- 时间戳换算
- 把时间戳换算为日期
date -d “1970-01-01 16066 days” - 把日期换算为时间戳
echo ( ( (( (((date --date=“2014/01/06” + %s)/86400+1))
- 把时间戳换算为日期
3、组信息文件/etc/group/和组密码文件/etc/gshadow
- 组信息文件/etc/group
- 第一字段:组名
- 第二字段:组密码标志
- 第三字段:GID
- 第四字段:组中附加用户
- 组密码文件/etc/gshadow
- 第一个字段:组名
- 第二个字段:组密码
- 第三个字段:组管理员用户名
- 第四个字段:组中附加用户