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 16:16
下一篇 2016-08-05 16:17

相关推荐

  • 如何练好yum的一招一式

      工作时间越久,就越有这样一个深刻体会,一个新知识或者新的技能一个人学习起来并不会觉得吃力,反而要想把你学习的新知识或者新技能给讲清楚让普通人听得懂才是最难的,之前我写过一篇博客讲述linux下的RPM包管理器,今天写的练好yum的一招一式,同样都是都是在linux系统的软件包的安装、卸载、升级等功能的,为什么我们还需要yum那,记得一位大哲学家…

    Linux干货 2015-11-10
  • 关于shell脚本基础编程第五篇

                  shellb编程基础第五篇              本章内容:数组 变量:存储单个元素的内存空间数组:存储多个元素的连续的内存空间…

    系统运维 2016-08-24
  • 设计模式 ( 二十 ) 访问者模式Visitor(对象行为型)

    特此说明:对访问者模式理解不是特别透彻,若有误,请指正,谢谢! 1.概述 在软件开发过程中,对于系统中的某些对象,它们存储在同一个集合collection中,且具有不同的类型,而且对于该集合中的对象,可以接受一类称为访问者的对象来访问,而且不同的访问者其访问方式有所不同。 例子1:顾客在超市中将选择的商品,如苹果、图书等放在购物车中,然后到收银员处付款。在购…

    Linux干货 2015-04-07
  • mongodb数据库切分

    前言:  相信维护过有大数据的MySQL的运维人员一定对sharding这个非常了解,MySQL数据库切分自身没有工具需要借助第三方工具进行;MySQL切片是一件非常头疼而又难做的一件事,一旦切分错误,不仅不能优化数据库,反而会加剧数据库负载;mongodb相对于MySQL来说,数据库切分是mongodb与生俱来的功能,mongodb会自动切分数据…

    Linux干货 2015-09-05
  • 推荐-Centos的网络配置命令和文件

    一、ifcongfig     Centos6之前最常用的配置网络命令就是ifconfig,使用ifconfig命令时最好切换到root用户的身份     1、直接使用ifconfig可以查看当前配置的网络设备的信息      &…

    Linux干货 2016-03-27
  • VIM入门及进阶

    什么是VIM?     VIM类似于Vi编辑器, 它是一个功能强大、可高度定制的文本编辑器, 是一个纯粹的自由软件。注意:vi和vim不完全相同 为什么要使用VIM?     相信大多数人接触Linux时使用的第一个文本编辑器都不是VIM,很多人看到VIM复杂的命令操作就望而祛步…

    系统运维 2016-03-04