LINUX下运用虚拟机进行用户的管理

用户管理

用户存在的意义

用户就是系统使用者的身份在系统中用户存储为若干个窜字符+若干个系统配置文件,这样可以
1.保证系统的安全
2.回收限制权力

用户组存在的意义

开放共享权力

用户的查看

1).

查看当前用户
whoami		   ##查看当前用户

在这里插入图片描述
2).

系统中用户的查看
id 			 ##查看指定用户id信息
id
	-u		 ##查看用户的uid
	-g	     ##查看用户的gid
	-G	     ##查看用户所在的所有组的id
	-n	     ##显示名字而不显示id数字
	-a       ##显示所有信息

在这里插入图片描述

用户切换

su -->switch user
su - 用户名称 ##切换用户却不切换工作环境
su - 中 “-” 标示在用户身份切换时同时切换当前用户的环境
su - 执行时高级用户切换到低级用户不需要密码,低级用户切换到高级需要,平级用户切换切换也需要

注意:每次su切换到其他用户操作之后必须退出,然后再次切换到其他用户

用户在系统中的存储方式

/etc/passwd
用户信息文件
用户名称:密码:uid:gid:说明文字:家目录:默认shell

/etc/group
用户组信息文件
组名:组密码:组id:组成员

/etc/shadow
认证信息文件

/etc/skel/.*
默认开启shell的配置,用户的骨文件

/home/username
用户的家目录

用户管理命令

1)用户的删除

userdel   westos		   ##删除用户但不删除用户的配置文件
userdel -r westos	       ##删除用户并删除用户的配置文件

2)用户建立
用户信息监控命令
watch -n 1 ‘tail -n 6 /etc/passwd /etc/group;ls -l /home’

监控/etc/passwd和/etc/group的后六行信息属性,还有/home的信息属性

在这里插入图片描述


useradd -u 8888 dzh1	    	  ##指定用户uid
useradd -g 21	dzh2			  ##指定用户初始组id,“21”用户组必须存在
useradd -G 21	dzh3			  ##指定用户附加组id,“21”用户组必须存在
useradd -c “hello” dzh4	    	  ##指定用户的说明文字
useradd -d /home/redhat dzh5	  ##指定用户家目录
useradd -s /sbin/nologin dzh6	  ##指定用户的默认shell

在这里插入图片描述

在这里插入图片描述

groupadd zyx				##建立用户组
groupadd -g 6666 zyx2		##建立用户组并指定用户组id
groupdel zyx				##删除用户组

在这里插入图片描述

在这里插入图片描述

3)更改用户信息

实验前的数据

在这里插入图片描述

usermod
usermod -l 新名称 zyx         ##更改用户的名称
usermod -u 6666  dzh         ##更改用户uid
usermod -g 21   dzh          ##更改用户的初始组
usermod -G 21    dzh         ##更改用户的附加组

在这里插入图片描述

在这里插入图片描述

usermod -aG 72  dzh         ##添加用户的附加组
-G是更改,-aG是添加,用-aG可以使用户同时是两个及以上组的附加组

在这里插入图片描述
在这里插入图片描述

usermod -G ""  dzh         ##删除用户所有附加组
这是两个双引号,也可以使用两个单引号,表示里面是空

在这里插入图片描述
在这里插入图片描述

usermod -c "myself" westos      ##指定用户说明文字   在登入用户时用户显示是myself

在这里插入图片描述
在这里插入图片描述

usermod -d /home/clb dzh     ##更改用户家目录的指向     切换账户后可以用pwd看家目录

在这里插入图片描述
在这里插入图片描述

usermod -md /home/lee dzh    ##更改用户家目录

在这里插入图片描述
在这里插入图片描述

usermod -s /bin/sh dzh       ##更改用户的shell  可用的shell可以用 cat /etc/shells查看

在这里插入图片描述
在这里插入图片描述

usermod -L       haha         ##冻结用户
usermod -U       dzh        ##解锁用户
 冻结用户前记得给用户密码  passwd westos 
不设置密码用户也不会在登陆界面显示
注销用户:gnome-session-quit --force 

在这里插入图片描述
在这里插入图片描述

用户dzh被解锁,所以登陆界面用户有,之前给用户dzh一个usermod -c "myself" westos
指定了说明文字,所以显示的是myself,用户haha被冻结,所以登陆界面没有haha用户

用户认证信息

/etc/shadow         ##记录用户认证信息
westos:!!:17895:0:99999: 7:   :    :
 [1]   [2] [3] [4] [5]  [6] [7] [8] [9]
此文件一共有九列:
[1]
westos
用户名称:
[2]
!!
用户密码:
用户的加密字符串,默认用的加密方式为sha512对称加密,
如果加密字符串前出现"!"那么用户被冻结
[3]
17895
用户密码最后一次被更改的时间:
此时间计算是从1970-1-1开始计算的累计天数
[4]
0
用户密码最短有效期:
如果此位有设定数字,那么在此数字范围内的天数内是不能修改用户密码的
[5]
99999
用户密码最长有效期:
用户必须在此有效期内更新密码,如果超时会被冻结
[6]
7
密码警告期限:
在过期前制定天数内会发送警告信息给用户
[7]
用户非活跃天数:
此位默认为空,如果设定数值,那么在密码最长有效期过后仍然可以使用的天数
[8]
用户到期日:
默认为空,表示帐号一定会被冻结的时间点
[9]
用户自定义列,目前没有启用
passwd -S westos    ##查看westos用户密码信息

在这里插入图片描述

实验前,先监控/etc/shadow这个配置文件
命令: watch -n 1 tail -n 3 /etc/shadow

在这里插入图片描述
在这里插入图片描述

用户名称

用户密码

passwd		dzh			##更改dzh密码
	passwd	-l	dzh		##在用户密码前加入"!!"
	passwd	-u	dzh     ##去掉用户密码前的"!!"
	usermod	-L  dzh	    ##在用户密码前加入"!"
	usermod -U	dzh		##在密码不为空时使用
	passwd	-d	dzh		##清空westos密码
注意:
	普通用户改密码时
	1.必须知道当前用户原始密码
	2.密码不能和帐号名称相似
	3.密码不能是纯数字或纯字母
	4.密码不能是有序的字母和数字的组合

在这里插入图片描述
在这里插入图片描述

用户密码最后一次被更改的时间

passwd -e dzh		##会改变用户最后一次更改密码时间为0
					##用户在登陆时会被强制更改密码
chage -d 0 dzh		##两个命令功能类似

在这里插入图片描述

在这里插入图片描述

用户密码最短有效期

passwd -n 1 dzh		##dzh用户在一天之内不能修改密码
chage  -m 1 dzh

在这里插入图片描述
在这里插入图片描述

用户密码最长有效期

passwd -x 30 dzh 	##设定dzh用户在30天内必须改密码
chage  -M 40 dzh	

在这里插入图片描述
在这里插入图片描述

密码警告期限

passwd -w 2 dzh		##密码过期前两天有警告输出
chage  -W 2 dzh

在这里插入图片描述
在这里插入图片描述

用户非活跃天数

passwd -i 1 dzh		##密码过期后仍可登陆系统的天数
chage  -I 1 dzh

在这里插入图片描述
在这里插入图片描述

用户到期日

chage  -E 2019-11-11 dzh		##dzh用户在2019-11-11日会被冻结

在这里插入图片描述
在这里插入图片描述

用户自定义列,目前没有启用

用户授权

1.权力下放文件为/etc/sudoers
  此文件可以用vim直接编辑,但是不提供语法检测
  也可以使用visudo编辑此文件,visudo命令提供语法检测

2.下放方式
  visudo
  100行左右

用户	主机名称=(得到的用户身份		命令
tom	localhost=(root)	/usr/sbin/useradd	  ##tom用户可以在localhost主机以
							 				  ##root用户身份执行useradd命令
tom	localhost=(root)   NOPASSWD: /usr/sbin/useradd    ##tom用户可以在localhost主机以
							 				  ##root用户身份免密执行useradd命令

3.测试
su - tom
	sudo useradd hello
用sudo进行/etc/sudoers的调用
一开始先用超级用户建立用户tom,再用用户建立新用户harry,发现没有权限

在这里插入图片描述

用vidudo命令,赋予用户tom可以在localhost主机以root用户身份执行useradd命令

在这里插入图片描述

第100行是为了代码规范,写了一个注释
第101行是命令代码,注意主机名可以用hostname进行查询

在这里插入图片描述

给tom用户设定一个密码,因为他在创建用户的时候需要密码,切换到tom用户,建立hello用户,用id检测,创建成功

在这里插入图片描述

用visudo给用户tom一个免密权限

在这里插入图片描述

此时已经免密

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/dzh1125641239/article/details/85486229