linux中的权限管理

linux中的权限管理

  • 1. 权限的查看及读取
  • 2. 普通权限的类型及作用
  • 3. 文件用户及用户组管理
  • 4. 设定普通权限的方法
    • 4.1 复制权限
    • 4.2 用字符的方式设置权限
    • 4.3 数字方式设置权限
  • 5. 系统默认权限设定
    • 5.1 系统保留权利:umask
    • 5.2 临时更改umask
    • 5.3 永久更改umask
  • 6. 特殊权限
    • 6.1 stickyid 粘制位
    • 6.2 sgid
    • 6.3 suid 冒险位
  • 7. acl权限列表
    • 7.1 acl列表开启的标识
    • 7.2 acl列表的控制
    • 7.3 acl mask控制
    • 7.4 acl权限优先级
    • 7.5 acl列表的默认权限
  • 8. attr权限
    • 8.1 查看attr权限
    • 8.2 设置attr权限

1. 权限的查看及读取

1.1 权限的查看

ls -l file ##查看文件权限
ls -ld dir ##查看目录权限

在这里插入图片描述

1.2 权限的读取
文件的属性又被称为文件的元数据组
一种元数据用1个byte来记录内容
文件权限信息:

在这里插入图片描述

【1】:文件的类型

符号 文件类型
- 普通文件
d 目录
l 软链接
b 块设备
c 字符设备
s socket套接字
p 管道

【2】:用户权限
【3】:安全上下文
【4】:对象是文件时,代表文件被系统记录的次数(硬链接);对象是目录时,代表目录中子目录的个数
linux中的权限管理_第1张图片
【5】:文件的拥有者
【6】:文件的拥有组
【7】:对象是文件时表示文件内容的大小,对象是目录代表目录中子文件的元数据大小
【8】:文件内容最后一次被修改的时间
【9】:文件名称

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

(1) 用户对文件的身份

u  ## user 文件的拥有者
g  ##group文件的拥有组
o  ##other 除了文件拥有者和拥有组成员的其他用户的统称

(2) 权限位

  • 文件的权限位:

u(文件拥有者权限),g(文件拥有者权限),o(其他用户权限)

linux中的权限管理_第2张图片
(3) 用户身份匹配

user > group > other

(4)权限类型

  • 可读:“ r ”

对于文件:表示可以读取文件的内容
对于目录:可以使用 “ ls ” 查看目录中的文件

  • 可写:“ w ”

对于文件:表示可以编辑文件的内容
对于目录:可以在目录中新建或者删除文件

  • 可执行:“ x ”

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

3. 文件用户及用户组管理

(1) 修改文件或目录的拥有者

linux中的权限管理_第3张图片

(2) 修改文件或目录的拥有者和拥有组

linux中的权限管理_第4张图片

(3) 修改文件或目录的拥有组

charp username file1  ## 修改文件的拥有组

linux中的权限管理_第5张图片

chgrp username dir ##修改目录的拥有组

linux中的权限管理_第6张图片
linux中的权限管理_第7张图片
在这里插入图片描述

4. 设定普通权限的方法

设定文件权限:chmod

4.1 复制权限

chmod --reference=/mnt/file1 /mnt/file2 :复制文件/mnt/file1的权限到/mnt/file2中
chmod --reference=/mnt/dir1 /mnt/dir2 :复制文件/mnt/dir1的权限到/mnt/dir2上
chmod -R --reference=/mnt/dir1 /mnt/dir2 :复制文件/mnt/dir1的权限到/mnt/dir2及其子目录上,R表示递归操作

linux中的权限管理_第8张图片
linux中的权限管理_第9张图片

linux中的权限管理_第10张图片

4.2 用字符的方式设置权限

chomd  <a|u|g|o><+|-|=><r|w|x>  file

文件及目录的初始权限:
linux中的权限管理_第11张图片
linux中的权限管理_第12张图片
linux中的权限管理_第13张图片

linux中的权限管理_第14张图片

linux中的权限管理_第15张图片

4.3 数字方式设置权限

用数字方式设置权限时,常用bool值表示:1代表开放该权限,0代表关闭该权限
rwx = 111 :开放文件或目录的读,写,执行权限
— = 000:关闭文件或目录的读,写,执行权限
用三位二进制可以表示的八进制范围:0~7

符号 二进制 八进制 文件权限
rwx 111 7 可读,可写,可执行
rw- 110 6 可读,可写,不可操作
r-x 101 5 可读,不可写,可操作
r- - 100 4 可读,可写,不可操作
-wx 011 3 不可读,可写,可操作
-w- 010 2 不可读,可写,不可操作
–x 001 1 不可读,不可写,可操作
- - - 000 0 不可写,不可读,不可操作

用数字修改文件或目录权限的例子如下:

在这里插入图片描述
linux中的权限管理_第16张图片

5. 系统默认权限设定

系统存在的意义是共享资源,从安全的角度讲系统共享的资源越少、开放的权力越小系统的安全性越高。因此在保证系统安全和系统创造价值的基础上,把部分的权利默认开放,把不安全的权力默认保存

5.1 系统保留权利:umask

umask值越大系统安全性越高
文件默认权限 = 777 - umask -111=644
目录默认权限 = 777-umask=755

5.2 临时更改umask

umask权限值临时更改:可以在shell中临时设定系统保留权利,一旦shell关闭后权限值恢复默认值

5.3 永久更改umask

shell系统配置文件:vim /etc/bashrc

linux中的权限管理_第17张图片

系统环境配置文件:vim /etc/profile
linux中的权限管理_第18张图片

配置文件更改后必须要重新读取配置文件,否则umask的值不能更新成功:

source  /etc/bashrc
source  /etc/profile

linux中的权限管理_第19张图片

6. 特殊权限

6.1 stickyid 粘制位

对所有人开放pub目录的全部权限,那么该目录下的子文件能被所有用户删除

linux中的权限管理_第20张图片
针对目录:如果一个目录stickyid开启,那么这个目录中的文件只能被文件所有人删除

开启stickyid的两种方法:
chmod 1原始权限 dir
chmod o+t dir

linux中的权限管理_第21张图片

6.2 sgid

  • 针对目录,目录中新建的文件自动归属到目录的所有组中
chmod 2原始权限 dir
chmod g+s    dir

在目录中创建文件,一般情况下谁建立的文件,文件组就属于谁
linux中的权限管理_第22张图片

  • 针对目录,更改目录的gid后,目录中新建文件的文件组将会和目录的所属组保持一致
chmod 2原始权限 dir
chmod g+s    dir

linux中的权限管理_第23张图片

  • 只针对二进制可执行文件,当运行二进制可执行文件时,程序将以文件拥有组身份执行,和执行用户无关

linux中的权限管理_第24张图片

6.3 suid 冒险位

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

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

linux中的权限管理_第25张图片

7. acl权限列表

传统的权限仅有三种身份(user,group,other),若要对某一个user或group设置特定的权限要求,可以使用acl(文件访问控制列表)列表机制来实现

7.1 acl列表开启的标识

linux中的权限管理_第26张图片
acl列表开启后,通过ls查看到的文件的权限并不是文件的真实权限,需要用getfacl file 查看文件的真实权限

7.2 acl列表的控制

命令 功能
setfacl -m u:用户名:权限 file 在acl列表中指定特定用户的权限
setfacl -m g:用户名:权限 file 在acl列表中指定特定用户组权限
setfacl -m g::0 权限 file
setfacl -m x:u:用户名 file 删除acl列表中的用户
setfacl -b file 关闭acl列表
setfacl file 读取文件的权限

linux中的权限管理_第27张图片
linux中的权限管理_第28张图片

linux中的权限管理_第29张图片
linux中的权限管理_第30张图片

linux中的权限管理_第31张图片

7.3 acl mask控制

  • mask阀值是指用户能够获取的最大权限,若设定过facl值之后用chmod缩小文件的阀值可能会损坏mask

linux中的权限管理_第32张图片

  • mask值的恢复:setfacl -m m:权限 file

linux中的权限管理_第33张图片

7.4 acl权限优先级

  • 拥有者>特定指定用户>权限多的组>权限少的组>其他

linux中的权限管理_第34张图片
以下两个例子可以证明在在acl中,权限多的组的优先级高于权限少的组的优先级

linux中的权限管理_第35张图片
linux中的权限管理_第36张图片

7.5 acl列表的默认权限

  • 只对于目录/pub/dir1生效

linux中的权限管理_第37张图片

  • 对于目录/pub/dir1及该目录中已存在的子文件生效

linux中的权限管理_第38张图片

linux中的权限管理_第39张图片

  • 只对/pub/dir1中新建的文件生效

linux中的权限管理_第40张图片

8. attr权限

8.1 查看attr权限

 查看权限的命令:  `lsattr dir|file`

linux中的权限管理_第41张图片

8.2 设置attr权限

  • attr权限对所有的用户都有限制
  • 设置attr权限常用的两个参数
chattr +i dir ##不能新建或删除子文件
chattr +a dir ##能新建文件,不能删除子文件
chattr +i file ##无法对文件进行修改和删除
chattr +a file  ##无法对文件进行修改和删除

linux中的权限管理_第42张图片
在这里插入图片描述

在这里插入图片描述
linux中的权限管理_第43张图片

你可能感兴趣的:(linux基础)