• Linux CentOS7 用户组管理


    Linux操作系统基于多用户的设计理念,允许多个用户同时使用系统资源。用户是登录系统并使用系统资源的个体,其都有自己的账户和密码。用户组是将众多用户归类为一组。Linux中的用户和用户组是系统安全和权限管理的基础。本文将探讨Linux中用户组的创建和管理。

    关于用户的创建与管理是最基本的操作,用户组的删除与修改等,不在本文讨论之列。我们将从用户组(有时简称组)的创建与查询开始讨论。

    一、创建组

    新安装的centos7系统中,默认存在的组是root组,及其系统组(如bin、sys、Ip、tty、mem等)。

    组ID用gid表示,与uid自动编号相同,系统id小于1000,普通组(与普通用户)id将从1000开始编号,添加一个新用户,编号自动加1。如果设置uid(或gid)为2000,新用户将在此基础自动加1进行编号。如果重设一用户gid为1500,新用户仍然在原来的基础上(2000)自动加1。

    1.单独创建

            groupadd 组名

            -g  指定用户组的gid

    2.由创建用户产生

            useradd 用户名

            -g 指定用户组的gid/组名

            -G 指定用户附加组名/gid,多个组时用逗号分开

    二、组操作

    对用户组的常用操作包括:设置组密码、为组指定一名或多名管理员、添加其他用户到组内、把不合适的组成员删除等。不常见操作有对用户组的删除groupdel和对用户组的修改groupmod。

    1.指定管理员

            gpasswd -A 用户名 组名

    如把tangseng(唐僧)设为组管理员

            gpasswd -A tangseng tangseng

    2.添加成员

    在用户组中添加成员有两种方式:root管理员或组管理员

    a.由root添加成员

    把用户zhang、wang和zhao添加到tangseng组中

    (1)把tangseng组作为主组

    (2)把tangseng组作为附加组

    b.由组管理员添加成员

    基本语法:

            gpasswd -a 用户名 组名

    本案例由组管理员tangseng把tang、song和ming添加到tangseng

            su - tangseng

            gpasswd -a tang tangseng

            gpasswd -a song tangseng

            gpasswd -a ming tangseng

    3.删除成员

    a. 由root删除成员

            gpasswd -d 用户名 组名

    本案例中把由root管理员把song组员从tangseng组中删除

    b.由管理员删除组成员

    基本语法:

            gpasswd -d 用户名 组名

    本案例中把由组管理员tangseng把ming组员删除

            gpasswd -d ming tangseng

    三、查看组

    1.查看用户属于组

    a.groups

    由命令groups用户名  查看用户属于哪些组

    由上图可知:tangseng只属于tangseng组,而tang属于三个组tang、class1和tangseng。在这三个组中,tang这个组是tang用户的主组,而class1和tangseng是附加组。

    b./etc/group

    由组文件查看组及组成员

    由上图可知:第1列是组名,第四列含有用户名的,是第1列组的成员。class1有三个成员,wukong组和wuneng组都含有成员baigujing,tangseng组中含有四个成员。

    c.id

    由id -g用户名  查看用户的组信息

    2.查看组中成员

            getent  group 组名

    由上图可以该组中有四名成员

            getent --help

    可以查看命令getent的帮助信息。

    四、切换组

    在Linux系统中,可以通过用户修改,把其主组改变为其他组。原来的主组将不存在,其附加组中也没有了改变前的组。而通过newgrp命令,把附加组中的某一个组切换为主组,不改变用户所占有的组。

    1.usermod

    我们以用户tang为例,验证改变tang的主组之前后变化

    a.查tang主组

    由上图可知:tang主组是tang,其gid为5018

    b.改变tang主组为class1

            usermod  -g  class1 tang

    c.验证tang主组变化

    通过改变主组,可看到gid由原来的5018变为现在的5022,组名由原来的tang变为现在的class1。

    2.newgrp

    常用的用户组之间切换命令是newgrp。通过该命令,可以让用户从附加组中选择一个作为其新的主组。

    newgrp命令的基本语法如下:

            newgrp [选项] [组名]

    其中,组名为要切换到的用户组名称。如果在命令行上没有指定组名,则默认将会进入当前登录用户的主组。

    切换原理与功能

    一个用户有多个附加组时,通过newgrp切换,把原主组与某一附加组交换:原主组成为附加组,某一附加组成为主组。

    下面的案例,我们以wukong为例,进行操作。

    a.切换前信息

    切换前查看用户的主组与附加组,可看到gid所标志的,就是当前主组

    主要查看方法:

    (1)id  用户名

    (2)getent group  组名

    (3)cat /etc/passwd |grep "用户名"

    (4)cat /etc/group |grep "组名"

    上图是切换主组前的相关信息。我们切换用户wukong,在其家目录中创建目录及文件

    b.切换

    进行切换newgrp  附加组名

    newgrp xiyou

    c.验证

    再次查看组信息

    由上图可以看到切换前后的变化:用户在哪个组中,创建普通文件与目录时,所属组就是哪个组。

    由此也可观察到所属组的变化是临时性的,退出切换组状态,仍保持原来的所属组

    五、组权限

            gpasswd的帮助

    1.设密码

            gpasswd 组名

    2.用户组的权限管理

    文件权限:Linux中的每个文件和目录都有所属用户和所属用户组,通过文件权限可以控制用户对文件的访问权限。文件权限包括读取(r)、写入(w)和执行(x)权限,分别对应数字表示为4、2和1。通过chmod命令可以修改文件权限。

    文件所属组:每个文件都有一个所有者和一个所属组,所有者是文件创建者的用户,所属组是所有者所属的用户组。通过chown和chgrp命令可以修改文件的所有者和所属组。

    特殊权限:除了基本的文件权限外,Linux还支持一些特殊权限,如SetUID、SetGID和Sticky Bit。SetUID权限允许用户在执行程序时以程序所有者的权限执行,SetGID权限允许用户在执行程序时以程序所属组的权限执行,Sticky Bit权限用于限制对某些目录的删除操作。

    用户和组的关系:用户和用户组之间有一对多的关系,一个用户可以同时属于多个用户组。用户组可以通过文件权限和ACL(访问控制列表)来控制对文件的访问权限。

    系统安全性

    a.资源隔离:通过将用户分配到不同的用户组,可以实现资源的隔离。不同用户组之间的文件和目录权限可以相互独立,从而防止用户越权访问和修改资源。

    b.访问控制:通过用户和用户组的管理,可以实现对系统资源的精细控制。管理员可以根据需要为不同用户和用户组分配不同的权限,从而限制用户对系统资源的访问。

    c.安全审计:用户和用户组的管理可以为系统安全审计提供重要依据。通过记录和监控用户和用户组的活动,可以及时发现异常行为和安全威胁。

    d.用户认证:用户和用户组的管理是系统认证和授权的基础。通过用户和用户组的管理,可以实现用户的身份验证和权限控制,保障系统的安全性。

  • 相关阅读:
    21天学习挑战赛——Python 操作Excel(xlrd和xlwt)
    CentOS Stream 9 配置静态 IP
    OpenMP入门
    android 13.0 SystemUI导航栏添加虚拟按键功能(一)
    《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(10)-Charles如何修改请求参数和响应数据-下篇
    在模拟器上安装magisk实现Charles抓https包(二)
    Node.js学习篇(一)利用fs引入文件和写入或修改文件以及path
    如何恢复被盗的加密货币?
    GBase 8c V3.0.0数据类型——几何类型转换函数
    曾濒临死亡的游戏,摇身变成价值270亿美元的应用,如何做到的?
  • 原文地址:https://blog.csdn.net/qq_36142959/article/details/133845538