1、用户存在的意义
用户是系统安全机制的一部分
2、组存在的意义
文件共享、权力管理
3、用户的建立及删除
为了更明显的查看用户和组的信息,需要一条监控命令来实现
watch -n 1 'tail -n 3 /etc/passwd /etc/group;ls -l /home' ##每过一秒更新用户信息文件/passwd 和用户组信息文件/group 都显示3行
1)useradd westos ##建立用户westos
userdel harry ##删除用户harry
userdel -r harry ##删除用户并删除用户的配置文件
4、组的建立及删除
groupadd shengchan ##新建组shengchan
groupdel shengchan ##删除组生产
5、用户的查看
id -u ##查看用户的uid
id -g ##查看用户的gid
id -G ##查看用户所在的所有组的id
6、用户切换
su - 用户名
超级用户root切换到其他用户时不需要密码,普通用户切换到普通用户时需要密码(图中用户student和用户leo都是需要自己新建的,如何新建在下边介绍)
注:每次切换到其他用户操作后退出,然后在切换到其他用户
7、用户在系统中的存储方式
vim /etc/passwd ##用户信息文件
用户名称:密码:uid:gid:说明:家目录:默认shell
vim /etc/group ##用户组信息文件
组的名字:组密码:组id:组成员
8、新建用户信息配置
useradd -u 2222 unit1 ##指定用户uid 默认1000 开始至60000
useradd -g 1004 unit2 ##指定用户初始组id,"21用户组必须是存在的"
useradd -G westos unit3 ##指定用户的附加组id “21用户组必须存在”
useradd -c "hello" unit4 ##指定用户的说明
useradd -d /etc/unit5 unit5 ##指定用户的家目录
useradd -s /bin/unit6 unit6 ##指定用户的默认shell
userdel -r unit ##删除用户及配置文件
9、更改用户信息
##更改组信息
groupmod -g 6666 ##更改用户组id
usermod
usermod -l 新名称 unit1 ##更改用户的名称
usermod -u 6666 unit3 ##更改用户uid
usermod -g 1004 unit4 ##更改用户的初始组
usermod -G unit4 unit5 s ##更改用户的附加组 把以前的删除
usermod -aG 72 unit ##添加用户的附加组 以前的保留
usermod -G "" unit ##删除用户所有附加组的身份
usermod -c "hahahah" unit ##指定用户说明文字
usermod -d /home/lee unit ##更改用户家目录的指向
usermod -md /home/lee unit ##更改用户家目录
usermod -s /bin/sh unit ##更改用户的shell
usermod -L unit ##冻结用户
usermod -U unit ##解锁用户
10、 用户认证信息
/etc/shadows ##记录用户认证信息
unit4: : 17812: 0 : 99999 : 7 : : :
1 2 3 4 5 6 7 8 9
此文件一共有九列:
1:用户名称
2:用户密码
3:用户密码最后一次被更改的时间
4:用户密码最短有效期
5:用户密码最长有效期
6:密码警告期限
7:用户非活跃天数
8:用户到期日
9:用户自定义列,目前没有启用
passwd -S westos ##查看westos用户密码信息
watch -n 1 'tail -n 3 /etc/shadow;passwd -S unit4' ###监控状态
#用户名称#
用户密码
passwd westos ##更改westos密码
passwd -l westos ##在用户密码前加入“!!”
passwd -u westos ##解锁用户 “!!”
usermod -L westos ##在用户密码前加入“!”
usermod -U westos ##在密码不为空时使用
passwd -d westos ##清空westos密码
注意:
普通用户改密码时
1.必须知道当前永久原始密码
2.密码不能和帐号名称相似
3.密码不能是纯数字或纯字母
4.密码不能是有序的字母和数字的组合
11、认证信息设置及修改
#用户密码最后一次被更改的时间#
passwd -e unit4 ##会改变用户最后一次更改密码时间为0.
##用户在登陆时会被强制更改密码
chage -d 0 unit4 ##两个命令功能类似
#用户密码最短有效期#
passwd -n 1 unit4 ##unit4用户在1天之内不能修改密码
chage -m 1 unit4
#用户密码最长有效期#
passwd -x 30 unit4 ##设定unit4在30天内必须改密码
chage -M 30 unit4
#密码警告期限#
passwd -w 2 unit4 ##密码过期前两天有警告输出
chage -W 2 unit4
#用户非活跃天数#
passwd -i 1 unit4 ##密码过期后仍可登陆系统的天数
chage -I 1 unit4
#用户到期日#
chage -E 2018-11-11 unit4 ##unit4用户在2018-11-11日会被冻结
#用户自定义列,目前没有启用#
12、用户授权
1)权力下放文件为/etc/sudoers
此文件可以用vim直接编辑,但是不提供语法检测
也可以使用visudo编辑此文件,提供语法检测
2)下放方式
visudo
100行左右
用户 主机名称=(得到的用户身份) 命令
查看主机名:hostname
tom localhost=(root) /use/sbin/useradd
##用户tom 以root 的用户身份 执行useradd命令
tom localhost=(root) NOPASSWD: /use/sbin/useradd
##用户tom 以root 的用户身份免密 执行useradd命令
3)测试
su -tom
sudo useradd hello