用户管理基础
  1. 用户账号管理基础
用户是指可以登录到系统的账户。Linux是多用户的操作系统,ALT+F1—F6切换用户。它允许多个用户同时登录到系统
1、用户账号信息包括:
—用户名
—口令
UID:用户唯一标识符
GID:用户组的唯一标识符
—用户描述信息:
—用户主目录:用户登录的初始目录
SHELL类型:设置SHELL程序的种类

  1. 用户账号的分类:
超级用户(UID=0),该账号具有系统的一切操作权限
普通用户(500<=UID<max=60000):操作权限受到限制
用户(UID=1—499):限制本机登录(用于特定服务的启动用户)
注:-用户的UID的取值,除0以外,其它值不允许用户取相同的值
-Linux系统有很多内置用户账号,如:root,bin…
3、用户管理的相关文件:
1)、/etc/passwd
功能:存放用户账号的相关信息
内容:用户名 口令 UID 主组的GID 描述信息 主目录 SHELL
实例:实例:root *00root/root/bin/bash
此处存放的口令为屏蔽字符真正密码保存在etc/shadow中,
可以利用MD5加密
2)、etc/shadow
作用:存放用户的口令信息(加密过后的口令)
格式:user1 * 13526099999 7 -124130123456
说明:— user1 用户名
— *加密的口令
13526 1970年一月一日开始,该口令修改后已经过多少天了
— 0 需要过多少天以后该口令可以被修改
— 99999 口令的有效期(-1代表永远不过期)
— 7 口令失效多少天前发出警告
— -1 口令失效多少天以后禁用账号(-1不禁用,0立即禁用)
— 24130 用户账号的有效期,从1970.1.1开始计算
123456 保留字段

二、组账号管理
1、用户组的分类:(用户组是用户的集合)
准组:由管理员或用户手工创建的组
用组:由创建用户时自动创建,一般用来作为一些服务的启动账号
2、组的信息
组名:组的标识符号
口令
GID:组的唯一标识符
组的成员

3、用户组的数据文件
/etc/group
功能:存放系统用户组的的信息
格式:组名:口令:GIDUSER_list
4/etc/gshadow
功能:存放用户组的信息口令
格式:用户组名:口令:组管理用户:组成员用户
  1. 用户管理命令
1/etc/login.defs
作用:设置新用户的部分信息
内容:—MAIL _DIR 路径 //定义用户邮箱默认设置
—PASS_MAX_DAYS 数字 //指定默认口令最大使用天数
—PASS_MIN_DAYS 数字 //指定默认口令最小使用天数
—PASS_MAX_LEM 数字 //指定默认口令最小长度
—PASS_WARN_AGE 数字 //指定默认口令过期的警告的时间
—UID_MIN 数字
UID_MAX 数字 //指定生成的UID的范围
—GID_MIN 数字
GID_MAX 数字 //指定生成的GID的范围
—CREATAE_HOME yes/no //设置系统是否自动创建用户主目录
2/etc/default/useradd
作用:设置新用户的部分默认规则信息
内容:— GROUP = 数字 //设置新建用户的默认主组
— HOME = 路径 //设置新建用户的默认主目录的位置
— INACTIVE = 数字 //设置口令过期多少天后锁定用户
— EXPIRE = 日期 //设置用户的有效期
— SHELL = 路径 //设置用户的默认的SHELL
— SKEL = 路径 //设置默认用户配置文件的位置
  1. 用户个人配置文件
.bash_history //用户命令历史记录文件
.bash_profile //用户登录脚本文件
.bash_logout //用户注销脚本文件
.bashrc //用户命令别名文件及shell配置文件


  1. groupadd
功能:创建用户组
格式:groupadd [参数] 用户组名
参数:—g GID //指定新建组的GID
—r //建立伪用户组
实例:# groupadd cw //创建用户组cw
#groupadd –g 900 –o hrs //创建用户组GID900 如已存在,
则强制建立
  1. groupdel
功能:删除用户组(不能删除用户的主组)
格式:groupdel 用户组名
实例:groupdel user1
  1. groupmod
功能:修改用户组的信息
格式:groupmod <参数> 用户组名
参数: -g GID 用户组名 //修改用户组的GID
-n 新组名 原组名 //修改组的名称
实例:# groupmod –n group g1
#groupmod –g 800 g1

  1. useradd
功能:创建用户
格式:useradd [参数] 用户名
参数:-u UID //指定用户的UID
-s shell类型 //指定用户的默认shell类型
-d 路径 //指定用户的主目录
-g GID 组名 //指定用户的主组
-G GID 组名 //指定用户的附加组
-e 日期 //指定用户的有效期
- r //创建系统用户
-p 密码 //指定密码
实例:# useradd u1
# useradd –u 0 –o admini
  1. userdel
功能:删除用户
格式:userdel [参数] 用户名
参数:-r //删除用户时同时删除用户的主目录
实例:# userdel u1
# userdel –r u2
  1. passwd
功能:修改用户的口令
格式:passwd [参数] 用户名
参数: passwd –l <username> //锁定帐号
passwd –d <username> //删除密码
passwd –u <username> //启用某帐号
passwd –u -f <username> // 强制启用密码为空 的已锁定帐号
passwd –S <username> //显示帐号、密码信息
实例: # passwd u1
# passwd –d u1 //清空用户的密码
# passwd –l u1 //锁定用户u1
# passwd –u –f u1 //启用u1
  1. usermod
功能:修改用户的信息
格式:usermod [参数] 用户名
参数:-u UID //指定用户的UID
-s shell类型 //指定用户的默认shell类型
-d 路径 //指定用户的主目录
-g GID 组名 //指定用户的主组
-G GID 组名 //指定用户的附加组
-e 日期 //指定用户的有效期
-l 新用户名 当前用户名 //更改用户名
-L 用户账号名 //锁定用户
-U用户账号名 //解锁用户
  1. gpasswd
功能:修改用户组的口令/设置用户组的管理员/添加删除用户组的成员
格式:gpasswd [参数] 用户组名
参数:-a 用户名 //向组添加成员
-A 用户名 //设置用户组的管理员
-d 用户名 //从组删除成员
实例:# gpasswd u1
# gpasswd –A u1 users
# gpasswd –a u1 users
# gpasswd –d u1 users
  1. id
功能:查询用户的部分信息,包括用户名 UID 主组及附加组
格式:id [参数] 用户名
参数:-a //查看所有信息
-u //查看UID
-g // 查看用户组的GID
-G //
查看附加组的GID
-n //-u –g –G 连用,查看对应的名称
  1. groups
功能:查看用户组及附加组的信息
格式:groups 用户名
实例:# groups //显示当前用户所属的组
 #groups root //显示root 用户的所属组

  1. who
功能:查看系统登陆的用户信息
格式:who [参数]
参数: -b //查看系统的启动时间
-q //查看登陆的用户个数
-r //查看当前的运行级别

  1. whoami
功能:查看当前的用户名称
格式:whoami
  1. last
功能:查看系统最近的用户登陆信息
格式:last [参数] 指定用户名
参数:-数字 //查看最近n次登陆活动
-i //显示ip地址