M20-1 8月3号 –权限、用户和组的管理

一、权限管理:

           ls -l

                 rwxrwxrwx:

                              左三位:定义user(owner)的权限

                              中三位:定义group的权限:

                              右三位:定义other的权限

          

(1)进程安全上下文:

                      进程对文件的访问权限应用模型:

                                进程的属主与文件的属主是否相同,如果相同则应用属主权限,如果相同,则应用属主权限;

                                 否则,则检查进程的属主是否属于文件的数组:如果是,则应用数组权限

                                  否则,就只能应用other的权限

        权限:

                r:read,读

                w:write,写

                 x:excute,执行

              文件:

                    r:可获取文件的数据;

                   w:可修改文件的数据; 

                  x:可将此文件运行为进程

          目录:

                 r:可使用ls命令获取其下的所有文件 

                  w:可修改此目录下的文件列表,即创建或删除文件;

                  x:可cd至此目录下,且可使用ls -l 来获取所有文件的详细属性

                   

(2)权限管理命令:

            chmod命令:修改权限的三种方法

                      chmod [option]….MODE[,mode]…FILE…

                       chmod [option]…OCTAL-MODE FILE…

                      chmod [option]…–reference=RFILE FILE…

 三类用户:

               u:属主

               g:属组

               o:其他

               a:所有

(1) chmod [option]….MODE[,MODE]…FILE…

                        mode表示法:

                                  赋权表示法:直接操作一类用户的所有权限位rwx:

                                                       u=rwx

                                                       g=rwx

                                                       o=rwx

                                                       a=rwx(给u,g,o三者同时授权)

                                    blob.png

                                  授权表示法:直接操作一类用户的一个权限位r,w,x

                                                      u+  u-

                                                      g+  g-

                                                      o+  o-

                                                      a+  a-

                                               如:u+rwx

                                                blob.png

       

(2)使用八进制数字修改文件权限

                       r:4,w:2,x:1

                    blob.png

              

(3)引用参考文件修改权限

   选项:

          -R,–recursive:递归修改

从属关系管理命令:chown,chgrp

             chown命令:

                            chown [option]…..[owner][:[group]] file…

             选项:

                       -R:递归修改

           chgrp命令:

                            chgrp [option]。。。。group file…

                            chgrp [option]… –reference=RFILE FILE..

umask:文件的权限反向掩码,遮罩码

            文件:

                       666-umask

             目录:

                      777-umask

注意:之所以文件用666去减,表示文件默认不能拥有执行权限,如果减得结果中有执行权限,则需要将其加1;

            umask:023

                           666-023=644

                           777-023=754

二、用户和组的管理

  (1)用户管理命令

       useradd

       usermod

       userdel

   (2) 组账号维护命令

       groupadd

       groupmod

       groupdel

   useradd [options] loginname

     -u:UID

     -o:配合-u选项,不检查UID的唯一性

     -g:GID:指明用户所属基本组,可为组名,也可以GID

     -c “comment”:用户的注释信息

     -d:HOME_DIR:以指定的路径作为家目录(需要父目录存在,子目录不存在)

     -s:SHELL:指明用户的默认shell程序

     -G:GROUPS,GROUP2…:为用户指明附加组,组必须事先存在

     -N:不穿件私有组做主组,使用users组做主组

   usermod [options] loginname

      -u:UID:新UID

      -g:GID:新基本组

      -G:GROUP1

      -s:SHELL 新的默认SHELL

      -c ‘comment’:新的注释信息

      -d:HOME:新家目录不会自动创建,原家目录中的文件不会同时移动至新的家目录;若要创建新家目录并移动原家数据,需要同时使用-m选项

     -l:login_name:新的名字;

     -L:lock指定用户,在/etc/shadow密码栏里添加!,表示锁定密码

     -U:unlock指定用户,将/etc/shadow密码栏的!去掉,表示密码解锁

     -e:YYYY-MM-DD:指明用户账号过期日期;

     -f:设定非活动期限

 userdel:删除用户

      -r:同时删除用户下的家目录,邮箱目录等

  groupadd [options]….group_name 创建组

    -g GID:指明GID号;

    -r:创建系统组

  groupmod:组属性修改

     groupmod [option]…group

        -n group_name:新名字

        -g GID:新的GID

 groupdel:组删除

   groupdel GROUP

组密码:gpasswd

  gpasswd [option]group

     -a user:将user添加至指定组中;

     -d user:从指定组中移除用户user

     -A user1,user3,。。:设置有管理权限的用户列表

  newgrp命令:临时切换基本组

    如果用户本不属于此组,则需要组密码

 groupmems [options][action]

    options:

      -g, –group groupname  更改为指定组

      -a, –add username 指定用户加入组

      -d,–delete username 从组中删除用户

      -p,–purge 从组中清除所有成员

      -l,–list 显示组成员列表

 groups [option] [username]..查看用户所属组列表

  修改文件的属主:chown 

    用法:

       OWNER

       OWNER:GROUP

       :GROUP

 命令中的冒号可用.替换

      -R:递归

   修改文件的属组:chgrp

      -R:递归

blob.png

三、特殊权限

SUID:user,占据属主的执行权限位

  当启动进程之后,其进程的属主为原程序文件的属主

  SUID只对二进制可执行程序有效

  SUID设置在目录上无意义

    s:属主拥有x权限

    S:属主没有x权限

SGID:group,占据属组的执行权限位

    启动为进程之后,其进程的属主为原程序文件的属组

    s:属主拥有x权限

    S:属主没有x权限

STICKY:other,占据other的执行位

    在目录设置sticky位,只有文件的所有者或root可以删除该文件

    t:other拥有x权限

    T:other没有x权限

chattr +i 不能删除,改名,更改

chattr +a 只能增加

lsattr显示特定属性

原创文章,作者:因为有你,如若转载,请注明出处:http://www.178linux.com/31186