【Linux最强学习笔记5】Linux系统中的用户管理

1.用户及用户组存在的意义

  1. 用户存在的意义
  • 身份 account
  • 授权 author
  • 认证 auth
  1. 用户组存在的意义
  • 用户组是一个逻辑容器
  • 对用户进行归类和统一授权

2.用户及用户组在系统中的存在方式

  1. 用户
  • id存在于/etc/passwd文件中
  1. 用户组
  • /etc/group文件中

3.用户切换

  • 用户信息查看指令
用户信息查看指令
whoami
查看当前用户
id
查看用户id相关信息
id -u
查看用户的用户id
id -g
查看用户的主组id
id -G
查看用户所有组id
id -n
显示名称
  • 用户切换指令 su - 用户名
    • 从root到普通用户----不需要密码
    • 从普通用户到任意一个用户—需要密码
  • - 表示切换用户环境

    注意:在用户切换时,使用完毕应当及时退出;不要在一个shell中反复执行 su - 命令,否则会导致环境错乱
  • 示例:
    用户信息查看
    切换用户

4.用户的系统配置文件

用户系统配置文件
/etc/passwd
用户身份信息文件
(用户名称:用户密码:用户id:用户主组id:用户说明:用户家目录:用户默认shell)
/etc/group
用户组身份信息文件
(组名称:组密码:组id:组的附加成员)
/etc/skel/.*
用户环境配置文件模板
/etc/shadow
用户认证信息文件
/home/usernae
用户家目录

5.用户和用户组建立及删除

  • 监控用户建立的命令
watch -n 1 'tail -n 3 /etc/passwd /etc/group ;ls -l /home'
  • 建立用户
useradd username
建立用户
-u id username
用户建立
0 超级用户
1-200 系统预留id
201-999 系统用户
1000-60000 用户级用户
-g id username
主组id
-G id username
附加组id
-d dir username
指定用户家目录
-M usernamae
不自动创建家目录
-c word username
指定用户说明
-s shell username
指定shell
  • 删除用户
userdel -r username
  • 组建立
groupadd groupname
groupadd -g id groupname      #指定组名称
  • 组删除
groupdel groupname
  • 示例:
在一个shell中执行监控命令:

监控命令

得到如下界面:

监控界面

在另一个shell中:执行添加用户、添加组

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

6.用户和用户组的信息管理

  • 用户
usermod         #更改用户信息
-l
更改用户名称
-u
更改用户id
-g
更改用户主组id
-G
更改用户附加组身份
-aG
添加用户附加组身份
-c
更改用户说明
-d
更改家目录指向
-m -d
更改家目录指向及及家目录名称
-s
更改默认shell
-L
冻结账号
-U
解锁账号
  • 用户组
groupmod -g groupname    #更改用户组id
  • 示例:

在这里插入图片描述

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

7.用户认证信息管理

  • 用户名称
passwd -s username       #查看用户密码状态
  • 用户加密字符 修改密码
超级用户修改密码
passwd username
只有root可执行
“echo newpassword | passwd --stdin username”
普通用户修改密码
passwd
需输入原始密码,8位以上(数字+字母)新密码,重复输入
冻结认证
passwd -l username
冻结账号认证
passwd -u username
解锁账号认证
密码删除
passwd -d username
密码使用天数
(从1970-1-1到今天的时间)
passwd -e 0
修改默认使用时间为0
chage -d 0
账号必须改密码才能登陆实现
密码最短有效期
passwd -n 1 username
用户在一天内不能改密码
chage -m 1 username
密码最长有效期
passwd -x 40 username
40天内用户必须修改密码,否则被冻结
chage -M 40 username
密码过期警告
passwd -w 2 username
账号到期前2天警告
chage -W 2 username
认证非活跃天数
passwd -i 2 username
账号认证最大时间超过后还能用2天
chage -I 2 username
账号认证到期时间
chage -E '2020-10-12'
到2020-10-12这天账号会被冻结
  • 示例:
在root下执行监控命令:

在这里插入图片描述

得到如下界面:

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

8.用户权利下放

普通用户无法执行系统管理命令,root可进行授权

#授权方法:
#1.(root)
visudo
#2.进入文件的100行左右
#3.添加:
username	hostname=(newusername)	[NOPASSWD:]/command1,/command2
   ↓			↓		↓						↓
#用户名		#主机名=(身份)					#可执行的命令
#4.保存:wq

#例如:
westos		linux.westos.com=(root)		NOPASSWD:/usr/sbin/useradd,/usr/sbin/userdel
  ↓								↓			  ↓				↓	
#westos用户					#使用超户		#免密		#执行useradd和userdel命令

普通用户授权方式:sudo

9.例题

在系统中完成以下用户操作

1.建立用户组shengchan,caiwu,jishu,并满足以下要求:
—shengchan组id为8000
—caiwu组id为8001
—jishu组id为8002
2.建立westosuser,linux,lee,westosadmin等用户完成以下要求
—westos用户的附加组为shengchan和jishu
—lee的主组为caiwu,附加组为jishu,lee的uid和gid必须一致
—linux为系统账号不能直接被操作者使用
—westosadmin用户不属于以上三个部门,但是可以在系统中自由的管理用户
3.如下:
—以上用户密码均为westos,并要求用户首次登陆时强制修改密码
—设定以上用户密码必须在30天内进行修改,并在过期前2天发出警告

  1. 建立一个.sh文件,执行vim practice_user.sh

  2. 编辑,保存
    在这里插入图片描述

  3. 运行.sh文件
    在这里插入图片描述

  4. 给予westosadmin管理权

    • 执行 hostname,得到主机名,复制
    • 执行 visudo
    • 编辑保存(切勿改变其他语句内容)
    • 切换用户,验证权限
      在这里插入图片描述
(后面打错了,将sdsnzy改为westosadmin即可)

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值