linux用户管理

本文详细介绍了Linux系统中用户、权限划分(超级用户、系统用户和普通用户)、基本权限UGO、文件权限设置(包括chown和chmod)、用户和用户组管理、sudo权限、umask掩码、高级权限类型(suid、sgid、sticky)以及隐藏权限的使用。
摘要由CSDN通过智能技术生成

Linux中用户及其身份的划分

        账户为分三类:
超级用户(管理员):享有最高权限,具备系统中的所有权限(一般为root),UID为0
系统用户 :别称“伪用户”,无法登录系统,其主要作用是支撑系统运行,方便系统管理。uid号码小于1000.
普通用户:有权限限制,只能对自己目录下的文件进行操作,可以登录系统。uid 大于1000,登陆shell是bin/bash。
任何一个账户在创建的同时都会在系统里面创建一个同名的组。

1.用户权限管理

        1.1基本权限UGO

        文件权限设置: 可以赋于某个用户或组 能够以何种方式 访问某个文件。

f64d6d4aa1304dd698a8ef46f36764fe.png

权限对象:

u:属主         g:属组                o:其他人

基本权限类型:

读(read):r-------------->4

写(write):  w------------->2

执行(exe):x------------>1

      r w x           rw-           r--            alice         hr      file1.txt
属主权限    属组权限   其他人权限     属主    属组      文件

        1.2权限设置

        chown:改变文件或目录的所属组及所属组。

        chmod:改变文件或目录设置访问权限。        

        改变文件的所属主,属组:chown

        chown   属主.属组      文件或目录

        chown    tom.hr   file.txt       #修改属主,属组

        chown      .hr    file.txt         #修改属组

        chown        -R        tom.hr        file.txt        #递归修改------针对目录

        改变文件权限:chmod

a.使用符号

        dd1d2405ec6848e4b1476e34d655a193.png

        chmod        u+x        file1.txt        #属主增加执行

        chmod        a=rwx        file1.txt        #所有人有读写执行权限

        chmod        a=-        file1.txt            #所有人没有权限

        chmod        ug=rw,o=r        file1.txt        #属主属组有读写权限,其他人只有读权限

b.使用数字

        chmod        755        file1.txt        

        -rwxr-xr-x  1 root root    0 Jul 23 22:40 file1.txt

 r,w,x权限对文件和目录的意义

320763c2bc6848e494a20deed4120a02.png2.用户管理

查看用户的基本信息

[root@localhost tmp]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
..............

     分隔符::
第一列:用户名
第二列:密码
第三列:用户标识号--->(uid)是一个整数,系统内部用它来标识用户。通常用户标识号的取值范围是0~65535。0是超级用户root的标识号
第四列:gid
第五列:描述信息。
第六列:家目录
第七列:是用户登陆到界面的第一个命令,开启一个shell。登陆shell

        2.1添加用户

        useradd        用户名        

        useradd        aren        -u        1002        #-u指定用户的uid

        useradd        aren        -p        123456        #-p指定用户的密码

        useradd        -s        /sbin/nologin        -M        aren      #-s指定用户登录的shell,-M不创建用户的主目录

        useradd        aaa        -d        /opt/aaa        #-d指定新用户的目录

        2.2查看用户

        id        用户名

[root@localhost tmp]# id aren

uid=1000(aren) gid=1000(aren) 组=1000(aren)

        2.3删除用户

        userdel        用户名

                -r         #删除主目录和邮件池

3.用户组管理

[root@localhost tmp]# cat /etc/group
root:x:0:
bin:x:1:
daemon:x:2:

组名:代表组密码:gid:组员

        3.1创建用户组

        groupadd        组名        

        groupadd        hr        -g        1111        #指定组id

        3.2删除组

        groupdel        组名

        3.3组成员管理

1.给组添加账户
-a
[root@qfedu ~]# gpasswd -a user10 grp2
Adding user user10 to group grp2


2.同时添加多个用户到组
-M:members成员的缩写
[root@qfedu ~]# gpasswd -M tom,alice it


3.从组删除用户1
-d
[root@qfedu ~]# gpasswd -d user07 hr
Removing user user07 from group hr

3.4组信息修改

# groupmod   h1    -n         h2      #修改组名h1为h2

4.修改用户基本信息:usermod

        usermod        aren        -g        tom        #-g指定基本组

        usermod        aren        -G        tony        #-G指定附加组,会覆盖其他的附加组

        usermod        aren        -l        Aren        #修改用户名aren为Aren

        usermod        hhh        -md        /opt/hhh        #将家目录内容移至新位置

5.切换用户  su

        su  -   用户        #切换用户(改变环境变量)

        su       用户        #切换用户(保留环境变量)

        切换用户时加 - 与不加 - 的区别: 加 -时,会进入用户的家目录,不加-时,切换完用户还在当前目录。

6.sudo用户(临时提权)

        sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令。

        提权1:

        6.1.编辑/etx/sudoers配置文件

        vim        /etc/sudoers

跳转到100行,将要赋予sudo权限的用户按照root ALL=(ALL) ALL 的格式写在下一行,然后强制保存退出。 (每次使用sudo 都会有密码)           

        如果想要免除每次使用sudo命令输入密码,则修改为
         aren    ALL=(ALL)       NOPASSWD: ALL
        d42cae8568a84c568535406582870cf3.png

         提权2:

        若多个用户都需要sudo权限的话,一个一个添加不方便,这样的话需要实现批量添加 即可以将用户加到用户组wheel下创建用户时指定在wheel组内,wheel组内的用户拥有sudo权限,并且wheel组在系统内部已存在的。
        [root@server-1 ~]# useradd user01 -G wheel        #将user01指定在wheel中

        允许“wheel”用户组的成员运行所有命令
        %wheel  ALL=(ALL)     ALL
        允许“wheel”用户组的成员运行所有命令,且运行时不需要输入密码
        %wheel  ALL=(ALL)              NOPASSWD: ALL
        允许“user01”用户运行所有命令
        user01    ALL=(ALL)       ALL
        允许“user01”用户运行所有命令,且运行时不需要输入密码
        user01  ALL=(ALL)       NOPASSWD: ALL

fe0260c5fb264af6899df08a095ecad1.png

7.umask权限掩码

        控制用户创建文件和目录的默认权限

[root@localhost ~]# umask
0022

0022 root账户默认
0002 普通用户默认

#root用户默认最高权限
目录---777 文件---666

#通过计算得出root用户创建目录和文件的权限为:
也是现在root用户创建完目录和文件的默认权限:
目录:755
文件:644

[root@testhost ~]# mkdir dir
[root@testhost ~]# ll -d dir
drwxr-xr-x 2 root root 6 9月  16 13:08 dir    #755
[root@testhost ~]# touch file
[root@testhost ~]# ll file
-rw-r--r-- 1 root root 0 9月  17 17:41 file    #644

 修改umask

[root@testhost ~]# umask 0111
 

8.高级权限类型

  • suid ==== 4 提权 (只对二进制命令文件生效,其他不管用)
  • sgid ==== 2 继承属组权限    (只能对目录设置)
  • sticky == 1 (t权限)  权限控制

suid

作用:让普通用户临时拥有该文件的属主的执行权限,suid权限只能应用在二进制可执行文件(命令)上,而且suid权限只能设置在属主位置上。

  1. SUID 权限仅对二进制程序(binary program)有效;
  2. 执行者对于该程序需要具有 x 的可执行权限;
  3. 本权限仅在执行该程序的过程中有效 (run-time);
  4. 执行者将具有该程序拥有者 (owner) 的权限。
[root@localhost ~]# chmod u+s /usr/bin/cat

  sgid

SGID主要用在目录上-----如果用户在此目录下具有w权限的话,使用者在此目录下建立新文件,则创建的这个文件的群组与此目录的群组相同。

[root@localhost opt]# chmod g+s dir1/

Sticky Bit

这个就是针对others来设置的了,和上面两个一样,只是功能不同而已。
SBIT(Sticky Bit)目前只针对目录有效,对于目录的作用是:当用户在该目录下建立文件或目录时,仅有自己与 root才有权力删除。

[root@localhost opt]# chmod o+t dir1/

9.隐藏权限

设置隐藏权限---------chattr

        i        无法对文件进行任何修改
        a                只允许补充内容,无法进行覆盖/删除内容
        A        不能修改这个文件的最后访问时间
添加隐藏属性:
[root@testhost ~]# chattr +i file.txt    

    
撤销隐藏属性:
[root@testhost ~]# chattr -i file.txt 

查看隐藏权限---------lsattr

#查看file.txt的隐藏权限
[root@testhost ~]# lsattr file.txt    
----i----------- file.txt

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值