第五单元Linux系统中的权限管理

                           Linux系统中权限管理

1:权限查看及读取  

1.权限查看         
      ls -l file               查看文件权限

      ls -ld dir             查看目录权限

2. 权限的读取 —— 文件的属性被叫做文件的元数据(meta data),一种元数据,用1个byte来记录内容
文件权限信息      
  - | rw-r--r-- | . | 1 | root | root | 0 |       Apr 12 10:57 | westos

[1]      [2]      [3][4]   [5]     [6]    [7]                    [8]           [9]

目录权限信息 
          - | rw-r--r-- | . | 1 | root | root | 0 |       Apr 12 10:57 | westos

         [1]      [2]     [3][4]   [5]     [6]    [7]                  [8]           [9]

对于每一位的解释

[1]   文件类型

 -     普通文件

 d    目录

 l     软连接

 b    快设备

 c    字符设备

 s     socket套接字

 p     管道

2.  用户权限       

       rw-|r--|r--

        u    g   o

3. 系统的selinux开启

4.  对于文件:文件内容被系统记录的次数(硬链接个数)

      对于目录:目录中子目录的个数

5.  文件拥有者

6.  文件拥有组

7.  对于文件:文件内容大小

      对于目录:目录中 子文件的元数据大小

8.文件内容被修改的时间

9.文件名称

二.普通权限的类型及作用 

1.用户对文件的身份
   u: (user)    文件的拥有者,ls -l 看到的第五列信息

   g: (group)  文件拥有组, ls -l 看到的第六列信息

   o: (other)   既不是拥有者也不是拥有组成员的其他用户的通称

2.权限位
    rwx|r--|r--

    u    g    o

3.用户身份匹配 
   user > group > other

4.权限类型
     -       权限未开启 
     r       可读
             对于文件:可以读取文件内容

              对于目录:可以ls列出目录中的文件

    w      可写
                       对于文件:可以更改文件内容

                       对于目录:可以在目录中新建或者删除文件

    x      可执行   
                       对于文件:可以用文件名称调用文件内记录的程序
                        对于目录:可以进入目录中  

 3:设定普通权限的方法

 chmod             设定文件权限   

 chmod 复制权限
 chmod --reference=/tmp  /mnt/westosdir                        复制/tmp目录的权限,到/mnt/westosdir上

 chmod -R --reference=/tmp /mnt/westosdir                    复制/tmp目录的权限到/mnt/westosdir及目录中的子文件上                                                                                                                                                                                -R 代表第归操作

chmod 字符方式设定权限     

chmod <a|u|g|o><+|-|=><r|w|x> file                      用字符方式设定文件权限
 示例 :

       chmod   u-rw /mnt/westos1

      chmod    u-rw /mnt/westosfile1

      chmod    u-rw,g+x,o+wx /mnt/westosfile2

      chmod    a-rwx /mnt/westosfile3

      chmod   u=rwx,g=rx,o=--- /mnt/westosfile4 

      chmod   - R  u=rwx,g=rx,o=--- /mnt/westosdir/

chmod 数字方式设定权限

权限波尔值 表示方式

rwx = 111                        

---  = 000

三位二进制可以表示的最大范围为8进至数

rwx=111 =7

rw- =110 =6

r-x  =101 =5

r--   =100 =4  =r

-wx =011 =3

-w-  =010 =2 =w

--x   =001=1  =x

---   =000 =0

   chond    600     /mnt/westosfile

             rw ------------

四:系统默认权限设定

系统本身存在的意义——共享资源
从安全角度讲系统共享的资源越少,开放的权力越小系统安全性越高
既要保证系统安全,又要系统创造价值,于是把应该开放的权力默认开放,把不安全的权力默认保留

如何保留权利

umask :表示 系统保留权力

umask                       查看保留权力

umask  权限值           临时设定系统预留权力       

文件默认权限 =777-umask -111

目录默认权限  = 777-umask

umask值越大系统安全性越高!

umask 系统保留权限值——临时更改
  umask 077

umask 系统保留权限值——永久更改


vim /etc/bashrc              shell系统配置文件
74 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

75 umask 002 --->022        普通用户的umask

76      else

77        umask 022                           #root用户的umask

78     fi

vim /etc/profile                  系统环境配置文件

59 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then      

 60 umask 002---> 022      普通用户的umask

 61      else

  62   umask 022                         root用户的umask

  63 fi

source /etc/bashrc

source /etc/profile              source作用是使我们更改的内容立即被系统识别

五:文件用户用户组管理

chown username file                        更改文件拥有者

chgrp groupname file                       更改文件拥有组

chown username:groupname file    同时更改文件的拥有者和拥有组

chown|chgrp -R user|group dir        更改目录本身及目录中内容的拥有者或者拥有组
 

 六:特殊权限

stickyid 粘制位 

针对目录:如果一个目录stickyid开启,那么这个目录中的文件,只能被文件所有人删除!!

stickyid 权限设定方式

 chmod   1原始权限             dir
chmod    o+t                         dir

实验:

mkdir                            /pub

chond            777        /pub

su - westos ----> touch /pub/westosfile

exit

su - lee --------> touch /pub/leefile

rm -fr /pub/leefile  可以删除

rm -fr /pub/westosfile   不属于自己的文件也可以删除

如何解决此问题:

chmod 1777 /pub

chmod o+t /pub

以上两条命令都可以开启pub目录的t权限

su - westos ----> touch /pub/westosfile

exit

su - lee --------> touch /pub/leefile

rm -fr /pub/leefile 可以删除

rm -fr /pub/westosfile 不属于自己的文件不能删除

rm: cannot remove 'westosfile': Operation not permitted  

sgid           强制位

针对目录:目录中新建的文件自动归属到目录的所属组中

设定:

chmod 2源文件权限            dir

chmod g+s                         dir

实验:

group westostest

mkdir  /mnt/westosdir

chmod 777 /mnt/westosdir
chgrp westostest  /mnt/westosdir 

watch -n1 ls -lR /mnt                          监测/mut目录下文件/目录属性

root ---> touch /mnt/westosdir/file      是谁建立的文件组就是谁的

chmod g+s /mnt/westosdir

root ---> touch /mnt/westosdir/filel           file1自动复制了/mnt/westosdir目录的所有组

只针对二进制的可执行文件(c程序)         

当运行二进制可执行文件时都是用文件拥有组身份运行,和执行用户无关

实验:

su - westos

watch -n 1 /bin/date                          

ps ax -o user,group,comm | grep watch   

westos westos watch

用root用户身份

chmod g+s /bin/watch

 su - westos

/bin/watch -n 1 date

ps ax -o user,group,comm | grep watch

westos root watch    

suid    冒险位

 只针对二进制的可执行文件(c程序)  

 当运行二进制可执行文件时都是用文件拥有者身份运行,和执行用户无关

chmod 4原属性  file

chmod u+s        file

实验:

su - westos

watch -n 1 /bin/date                          

ps ax -o user,group,comm | grep watch   

westos westos watch

用root用户身份

chmod u+s /bin/watch

 su - westos

/bin/watch -n 1 date

ps ax -o user,group,comm | grep watch

root    westos  watch    

七:acl权限列表 

  Aiccess Control Lists     访问列表控制

功能:

在列表中可以设定特殊用户对与特殊文件有特殊权限

acl列表 开启标识  

   -rw-rw---- + 1 root caiwu 0 Apr 18 09:03 westosfile

        没有"+"代表acl列表未开启

acl列表 权限读取

  getfacl westosfile               显示内容分析

file: westosfile                                   文件名称

owner: root                                       文件拥有者

group: root                                        文件拥有组

user::rw-                                            文件拥有者权限

user:lee:rw- group::r--                      特殊指定用户权限

group::r--                                           文件拥有组权限

group:westos:---                                特殊指定的用户组的权限

mask::rw-                                            能够赋予特殊用户和特殊用户组的最大权限阀值

other::r--                                             其他人的权限

   注意:当文件列表权限开启,不要用ls-l 的方式来读取文件的权限

acl列表的控制

 acl  mask    控制

 mask是能够赋予指定用户权限的最大阀值

问题:

     当设定文件的acl列表之后用chomd缩小了文件拥有组的权利   mask会发生变化

恢复:

setfacl   -m  m :权限   文件

acl 列表的默认权限

setfacl -m u:lee:rwx /mnt/westosdir                      只对于/mnt/westosdir目录本身生效

setfacl -Rm u:lee:rwx /mnt/westosdir              对于/mnt/westosdir目录和目录中已存在的内容生效 

以上的命令之针对已存在的文件生效,新建文件是会被设定的                                              

setfacl -md: u:lee:rwx /mnt/westosdir/             针对与/mnt/westosdir目录中新建文件生效

八:attr权限

i            不能作任何的更改

a            能添加不能删除

lsattr dir|file                           查看attr权限

chattr +i|+a|-i|-a dir|file         设定attr权限
 


 


 

    
 

 
 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值