linux中权限管理

权限的描述:

          权限的意思就是用户拥有的对系统支配能力的大小在linux中是严格控制用户权限的,不同的用户给予不同的权限,权限应遵循能少给就尽量少给的原则从而增加系统的安全性。

进程安全上下文:

   进程对问件访问权限的应用模型:进程的属主与文件的属主是否相同,如果相同,则应用属主权限,如果不同 则去检测进程的属主是否与文件的属组相同如果相同,应用属组权限,否则就只能应用other权限。   

linux中权限划分:    

    按照针对的对象可分为:

                   user:属主

                   group:属组

                   other:其他人

示例:

file.png

在看到的 rw-r–r– 中:左三位定义了user权限

                       中三位定义了group权限

                       右三位定义了other权限

   按照可执行的操作分为:

                     r:read 读

                     w:write 写

                     x:excute  执行

   按照对文件和目录的执行结果不同划分:

               r:read
                w:write              x:excute
文件 可以查看文件的的内容 可以对文件的内容进行修改 可将此文件运行为进程
目录 可以列表查看目录 可以对目录内的文件和子目录修改、删除也可添加 能cd切换到此目录作为工作目录

权限的组合机制:

    权限位   二进制   八进制

    —       000       0

    –x       001       1

    -w-       010       2

    -wx       011       3

    r–       100       4

    r-x       101       5

    rw-       110       6

    rwx       111       7

权限的管理命令:

       chmod 命令

 格式1:赋权、授权表示法

       chmod [ugoa][+-=][rwx]文件…

     u、g、o、a分别代表:属主、属组、其他人、所有人

     +:在原来权限的基础上增加权限

     -:在原来权限的基础上去除权限

     =:直接定义权限

     r、w、x:读、写、执行

     X权限:加x权限到目录上,而不给文件加,数字表示法不支持

    

   当执行所有人统一修改权限时,a可省略,但加w权限时除外(如图最后一条命令)

示例:

xxx.png 

格式2:八进制表示法

       chmod nnn 文件…

         nnn表示八进制数,每个n分别代表对应的rwx(权限位)的组合的和

                      r=4

                      w=2

                      x=1

         第一个n代表属主

         第二个n代表属组

         第三个n代表其他人

示例:

去.png

格式3:

         chmod –reperence=文件1  文件2   // 以文件1的权限为标准修改文件2的权限

示例:

deng.png

chmod命令的选项:

      -R :递归修改目录的权限,当执行-R选项时,会把目录及其目录里的文件、子目录的权限一并修改。 

示例:

默多克.png

从属关系的管理命令: chown、chgrp

  chown命令只有root用户可以执行;chgrp命令root可执行,文件的所有者也可以执行,不过只能修改为所有者所属的组。                 chown命令:

格式1                   chown [OPTION] ..[OWNER]:[GROUP] FILE ….

             

                        可修改文件或目录的属主、属组,也可二者同时修改 

示例:


我去.png


       chown [OPTION] .. –reference=RFILE FILE …

             把RFILE的从属关系赋值给FILE,


示例:

ajflajsdfldas.png

chown命令的选项:

              -R:递归修改目录的从属关系,当执行-R选项时,会把目录及其目录里的文件、子目录的从属关系一并修改。


dir.png

    chgrp命令:对所属组进行更该与chown 用法一致


特殊权限:SUID SGID sticky

           对文件或目录加上特殊的权限以实现某些特殊的需要

      对应的八进制数:       

                   SUID = 4

                   SGID = 2

                   sticky = 1


介绍:

     SUID 

       当给一个可执行的程序添加SUID权限时,如果此二进制程序的属主有可执行权限,则权限位x位上显示s(显示s,但x权限并没有删除,只是做了隐藏),当其他用户执行此二进制程序时,将以属主身份执行,如果属主对此二进制程序没有可执行权限,则权限位x位上显示S。

用法:

   格式1:      chmod u+s 二进制程序


密码.png


  格式2:        chmod nnnn 二进制程序


    第一个n就代表特殊权限位


1.png


SGID:    

      作用于二进制文件时,与SUID用法一致,

               chmod g+s 可执行程序      

      当作用于目录时,该目录内再新建文件或目录的所属组自动继承该目录的所属组。

               chmod g+s 目录

sticky:粘滞位,只能作用于目录,占据other的执行权限位

 

    作用:执行后,目录里的文件或目录将会受到保护,这些文件或目录只能由root用户和文件、目录的拥有者来进行管理。其他人无权修改删除。


chattr 命令;锁定文件 

  应用场景:当有一些文件特别重要,害怕被误删出时,可以用到,这只是一个方面。

用法:

  选项:

      +i:锁定后的文件将不能删除、改名、更改

      -i:解锁+i的锁定

      +a:锁定后的文件只能增加

      -a:介绍+a的锁定


lsattr命令:可以查看chattr的锁定情况


示例:

char人.png


访问控制列表:

            ACK:实现灵活的权限管理

   

设置命令: setfacl

      格式:setfacl -m u/g:用户/组:权限  文件/目录

                设置用户或组对文件或目录的ACL权限

 

        u:属主   g:组   d:默认设置   

  与常用选项的组合:

            setfacl -m u:zhang:rw f1       //设置zhang用户对f1文件的acl访问权限为rw


            setfacl -x u:zhang f1       //取消zhang用户对f1文件的acl访问权限


            setfacl -b    f1   //清除所有ACL设置


            setfacl -m d:zhang:rw 目录       //d 选项为默认设置,设置新建的文件或目录机子文件都设上ACL权限(只针对于目录)


            setfacl -k 目录    //删除默认ACL设置


             


 查询ACL设置命令:getfacl 文件/目录


示例:

是 顶顶顶.png

[root@myhost testdir]# setfacl -k dir

[root@myhost testdir]# getfacl dir

# file: dir

# owner: root

# group: root

user::rwx

group::r-x

other::r-x








原创文章,作者:ZJM,如若转载,请注明出处:http://www.178linux.com/27590

(0)
ZJMZJM
上一篇 2016-08-05
下一篇 2016-08-05

相关推荐

  • 认识shell

    一、认识shell 什么是shell?shell为单词外壳的意思。那么这是谁的外壳?我们知道一个系统中实际工作的是那些硬件,cpu、内存、磁盘等。我们如何调用这些硬件为我们工作?实际上,硬件是由内核kernel控制的。我们可以通过kernel控制硬件,但我们不能直接和内核kernel交流。我们需要一个外壳,这个外壳就是shell来沟通kernel。何为she…

    Linux干货 2015-09-22
  • 优云老王(四)干货总结:数据带来的奇妙世界

    作为产品经理的我们,不仅仅需要业务敏感的直觉,还需要数据驱动我们的产品不断创新!关于如何看数据,我列了主要的四个场景。 场景一:看页面点击,了解用户关注什么,卡在哪里 给谁看:产品经理和交互设计师 看什么: 由于我们对Web应用的所有界面,可交互元素都做了埋点,那么我们就可以看用户在页面里都做了哪些点击动作。首先是整个页面的横向比较,每个页面本身的操作数(重…

    2016-09-19
  • Infobright高性能数据仓库

    1.  概述         Infobright是一款基于独特的专利知识网格技术的列式数据库。Infobright简单易用,快速安装部署,使用中无需复杂操作,能大幅度减少管理工作;在应对50TB甚至更多数据量进行多并发复杂查询时,更能够显示出令人惊叹的速度。相比于MySQL,其查询速度提升了数倍甚…

    Linux干货 2015-04-05
  • 6个变态的C语言Hello World程序

    下面的六个程序片段主要完成这些事情: 输出Hello, World 混乱C语言的源代码 下面的所有程序都可以在GCC下编译通过,只有最后一个需要动用C++的编译器g++才能编程通过。 hello1.c  #define _________ }     #define ______…

    Linux干货 2016-05-08
  • 八大排序算法

    概述 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。 我们这里说说八大排序就是内部排序。     当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序、堆排序或归并排序序。    快速…

    Linux干货 2015-04-07
  • 第六周总结VIM编辑器的使用并完成练习题

    第六周 总结VIM编辑器的使用并完成练习题 1. VIM是什么? VIM(Vi IMproved)是从vi发展出来的一个文本编辑器。 2.为什么要使用VIM? VIM有代码补完,编译以及错误跳转等方便编程的功能,在程序员中广泛使用。对于大多数的用户来说,VIM有着比较陡峭的学习曲线,但是一旦掌握一些基本操作之后,能大幅度提高编辑效率。VIM是类Unix系统用…

    Linux干货 2017-09-02