Linux系统中的用户管理

Linux系统中的用户管理

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

【1】用户存在的意义
系统资源时有限的,如何合理分配资源?
在这个问题解决时必须要有三个资源的配合

  • 身份:account
  • 授权:author
  • 认证:auth
    即3A机制,3A机制组成系统中最底层的安全架构
    【2】用户组存在的意义
    用户组是一个逻辑容器,对用户进行归类和统一授权

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

电脑对数字敏感ID
人类对字符串敏感名称
ID:名称,必须要记录到文件当中的用户才能存在,用户就是/etc/passwd 文件中的一行字符
用户组存在的方式就是/etc/group 文件中的一行字符
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.用户切换

【1】用户查看

whoami查看当前用户
id查看用户的id信息
id -u查看用户的用户id
id -g-查看用户主组id
id -G查看用户所有的组的id
id -n显示名称

【2】用户切换

  • su - username
-切换用户环境
  • username
root→commonuser不需要后者密码
commonuser→root需要密码
commonuser→commonuer需要密码

在这里插入图片描述
如下图所示:切换用户即用户环境时命令为su - xy,如果使用命令su xy则只切换用户,而没有切换用户环境
在这里插入图片描述
注意
(1)在做用户切换时当使用完毕用户身份及时退出
(2)不要在一个shell中反复执行 su 命令
(3)在一个shell中反复执行 su 命令会导致环境错乱
在这里插入图片描述

4.用户涉及到的系统配置文件

【1】

/etc/passwd用户身份信息
  • 用户名称:用户密码:用户id:用户主组id:用户说明:用户家目录:用户默认shell

【2】

/etc/group组身份信息文件
  • 组名称:组密码:组id:组的附加成员

【3】

/etc/skel/ .*用户环境配置模板
/etc/shadow用户认证信息文件
/home/username用户家目录

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

【1】监控用户建立的命令

[root@localhost Desktop]# watch -n 1 "tail -n 4 /etc/passwd /etc/group;echo ===;ls -l /home

在这里插入图片描述
在这里插入图片描述
Ctrl+C即可结束监控命令
【2】

useradd username用户建立
useradd -u id usernameuid,2**16=655535
  • 0:表示超级用户
  • 1-200:系统预留id
  • 201-999:系统用户
  • 1000-60000:用户级用户
  • /etc/login.dafs:记录用户建立的默认规则
useradd -g id username主组id
useradd -G id username附加组id
useradd -d dir username指定用户家目录
useradd -c word username指定用户说明
useradd -s shell username指定用shell
userdel -r username用户删除 -r 删除用户的系统配置文件
groupadd groupname组建立
groupadd -g id groupname指定组名称
groupdel groupname组删除

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

usermod -l更改用户名称
usermod -u更用户id
usermod -g更改主组id
usermod -G更改用户附加组身份
usermod -aG添加用户附加组身份
usermod -c更改用户说明
usermod -d更改家目录指向
usermod -md更改家目录指向同时更改家目录名称
usermod -s更改默认shell
userod -L冻结账号
usermod -u解锁
groupmod -g更改用户组id

7.用户认证信息管理

【1】用户名称

passwd -S xy查看密码状态

即此处使用的监控命令:

[root@localhost Desktop]# watch -n 1 "tail -n /etc/shadow ; echo "===status===" ; passwd -S xy"

在这里插入图片描述
在这里插入图片描述
【2】用户加密字符

  • 更改密码
passwd xy只有root用户可以执行

root用户也可以使用 “echo 123 | passwd --stdin lee"更改密码

passwd普通用户更改密码Changing password for user lee.
Current password:输入原始密码
New password:输入新密码(8位以上无序数字+无序字母组合)
Rrtype new passwd:重新输入密码
passwd: all authentication tokens updated successfully.
  • 冻结认证
passwd -l xy冻结账号认证
passwd -u xy解冻账号认证
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  • 密码删除
passwd -d xy密码删除

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

【3】密码的使用天数
从1978-1-1算其到今天的时间

passwd -e xy修改默认使用时间为0

chage -d 0 xy同理,使用此命令后,账号必须修改密码才能登陆系统

  • 密码最短有效期
passwd -n 1 xyxy在一天内不能改密码
change -m 1 xy同理
  • 密码最长有效期
passwd -x 40 xy40天内xy用户必须更新密码
change -M 30 xy同理
  • 密码过期警告
passwd -w 2 xy账号过期前警告时间
change -W 1 xy 同理
  • 认证非活跃天数
passwd -i 2 xy账号认证最大时间超过后还能使用天数
change -I 1 xy 同理
  • 账号认证到期时间
change -E “2020-05-11”到2020-5-11这天账号会被冻结
  • 未启用功能

8.用户权力下放

在系统中普通用户是无法执行系统管理命令的,如果需要普通用户执行系统管理动作那么需要root用户授权
【1】普通用户授权方式“sudo”
作用:可以使普通用户使用指定的用户身份运行命令
授权方法:

visudo此命令作用是编辑/etc/sudoers并提供语法检测
xy                localhost.localdomain=(root)                       /usr/sbin/useradd
xy用户在          localhost.localdomain=(用超级用户身份)             执行useradd命令
username         hostname=(newusername)                             [NOPASSWD:] /command, /command1```



westos用户    在localhost.localdomain    使用超户  免密       执行useadd和userdel
westos        localhost.localdomain      =(root)  NOPASSWD: /usr/sbin/useradd, /usr/sbin/userdel

在文件的100行左右编写(此处为方便观察到操作使用:set nu命令添加行号)
代码的规范性
此处未选择免密执行:

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此处为免密执行:

在这里插入图片描述
测试:`

[root@localhost Desktop]# su - xy
[xy@localhost ~]$ sudo useradd westostext  在xy第一次使用sudo命令时需要输入xy密码
[xy@localhost ~]$ exit    退出xy
[root@localhost Desktop]# su - westos
[westos@ localhost ~]$ sudo userdel -r westostext      westos可以免密执行userdel 命令

9. getent

使用getent命令可以查看当前系统中有哪些用户
语法:getent passwd
查看系统中有哪些组:getent group
在这里插入图片描述
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值