Linux下的用户和用户组管理

你说的曾经没有我的故事 提交于 2020-08-16 00:05:34

一、用户及用户组存在的意义

1.用户存在的意义

系统资源有限的,如何合理分配系统资源?
Linux的特性是:多用户,多任务。

不同的用户执行自己的任务时互不干扰,每个用户不能越界去访问其他正在执行的任务,可见linux就是通过权限的划分和管理来实现多用户、多任务的运行机制。而Linux中的用户其实也是一个道理,通过建立不同权限的用户,一来可以合理的控制和运用系统的资源,二来可以帮助用户构建自己的私人空间,更好的组织和管理自己的文件

1)身份 :account
2)授权 :authorization
3)认证 :authentication

3A机制,3A机制组成系统中最底层的安全架构

2.用户组存在的意义

  • 用户组是一个逻辑容器
  • 对用户进行归类和统一授权

二、用户及用户组在系统中的存在方式

  • 用户是 /etc/passwd 文件中的一行字符
  • 用户组 存在方式是/etc/group 文件中的一行字符
    id -------->名称 (必须要记录到文件当中 用户才能存在)

三、用户的查看与切换

1.用户查看

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

在这里插入图片描述

2.用户切换

su - username 切换到username下
- 切换用户环境
username 如果root(超级用户)—>commuser(普通用户) 不需要输入密码
commuser(普通用户)—>root(超级用户) 需要密码
commuser(普通用户)—>commuser(普通用户) 需要密码
  • root(超级用户)—>commuser(普通用户)
    在这里插入图片描述
  • commuser(普通用户)—>root(超级用户)
    在这里插入图片描述
  • commuser(普通用户)—>commuser(普通用户)
    在这里插入图片描述
    注意:

  • 在做用户切换时,若用户身份使用完毕后,应及时退出
  • 不要在一个shell中反复执行su命令(会导致环境错乱)
    在这里插入图片描述

四、用户涉及到的系统配置文件

/etc/passwd :[用户身份信息文件]
在这里插入图片描述
/etc/group :[组身份信息文件]

在这里插入图片描述
/etc/skel/.* :[用户环境配置文件模板]

/etc/shadow :[用户认证信息文件]
在这里插入图片描述

/home/username :[用户家目录]

五、用户和用户组建立及删除

  • watch -n 1 “tail -n 3 /etc/passwd /etc/group ; ls -l /home/”(监控用户建立的命令)

在这里插入图片描述

  • useradd username 用户建立

useradd -u username 用户id
useradd -g id username 主组id
useradd -G id username 附加组id
useradd -d dir username 指定用户家目录
useradd -c word username 指定用户说明
useradd -s shell username 指定shell

(0:超级用户
1-200:预留id
201-999:系统用户
1000-60000:用户级用户
/etc/login.defs:记录用户建立的默认规则)



在这里插入图片描述

  • userdel username 用户删除

userdel -r username 删除用户的系统配置文件

在这里插入图片描述

  • groupadd groupname 组建立

groupadd -g id groupname 指定组名称

在这里插入图片描述

  • groupdel groupname 组删除

在这里插入图片描述

六、用户和用户组的信息管理

1.用户信息管理

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

在这里插入图片描述

2.用户组信息管理

  • groupmod -g 更改用户组id

在这里插入图片描述

七、用户认证信息管理

cat /etc/show
在这里插入图片描述

1.用户名称
2.加密密码
3.最近一次修改密码日期:从1970年1月1日起到最后一次被修改那天的时间天数
4.密码最小使用权限:密码使用多少天后才能够换密码
5.密码最大使用权限:密码使用多少天后必须换密码
6.密码警告期:密码到期前几天提醒用户
7.密码非活跃期:密码到期后用户仍可使用几天
8.账户过期日期:从1970年1月1日算起,多少天后账号失效
9.预留







1) Passwd 用法

passwd -S username 查看密码状态
passwd -username 修改密码
passwd –l 冻结密码
passwd –u 解锁冻结
passwd –d 删除密码
passwd –e 清零上次修改密码时间 使得用户在下次登录时必须改密码
passwd –n 修改密码最小使用权限
passwd -x 修改密码最大使用权限
passwd –w 修改警告时间
passwd –i 修改非活跃期限
  • 查看密码状态

在这里插入图片描述

  • 修改密码

超级用户下改普通用户username的密码
4170.png)

echo 123 | passwd --stdin username [只有root下才可以执行]
在这里插入图片描述
【以上两种方法在root下都可以修改普通用户密码】

普通用户改密码

Changing passwd for username
Current passwd :输入原始密码
New passwd:输入新密码(8位以上无序数字+无序字母的组合)
Retype new passwd:重复输入新密码
passwd:all authentication tokens updated successfully.



在这里插入图片描述

  • 冻结及解锁密码

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

  • 删除密码

括号内为linux密码在这里插入图片描述
输入passwd -d linux 命令后,括号内密码被删除
在这里插入图片描述

2)Chage 用法

chage –d 更改上次修改密码时间
chage –m 更改最小密码使用权限
chage –M 更改最大密码使用权限
chage –W 更改警告时间
chage –I 更改非活跃期限
chage –E 更改账号到期时间
  • 修改账号到期时间
    在这里插入图片描述

【以下修改均可用passwd或chage命令操作】

在这里插入图片描述

  • 设置密码立即过期(更改上次修改密码日期)
    强制用户在下次登录时修改密码:
    在这里插入图片描述
    设置上次修改密码时间距离1970-1-1日23天
    在这里插入图片描述



  • 修改最小密码使用权限
    在这里插入图片描述
    在这里插入图片描述

  • 修改密码最大使用权限
    在这里插入图片描述
    在这里插入图片描述

  • 修改密码过期前警告时间
    在这里插入图片描述
    在这里插入图片描述

  • 修改密码到期后非活跃期限
    在这里插入图片描述
    在这里插入图片描述

八、用户权力下放

在系统中普通用户无法执行系统管理命令时, 如果需要普通用户执行系统管理动作,那么需要root用户来进行授权(权力下放)。

授权方式:

sudo 可使普通用户使用指定的用户身份来运行命令

授权方法:

输入命令 visudo ,:100 定位到需要修改的那一行
在这里插入图片描述
插入模式下,输入要加入的命令
在这里插入图片描述
切换到普通用户,这时就可以添加和删除用户了
在这里插入图片描述




标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!