Linux文件系统权限管理ACL...

基本权限ACL

ACL的全称是 Access Control List (访问控制列表) 。
一个针对文件/目录的访问控制列表。
它在UGO权限管理的基础上为文件系统提供一个额外的、更灵活的权限管理机制。
它被设计为UNIX文件权限管理的一个补充。
ACL允许你给任何的用户或用户组设置任何文件/目录的访问权限。

  • 1、针对用户设置权限
  • 2、针对用户组设置权限
  • 3、子文件或者子目录继承父目录的权限

setfacl:设置ACL

语法格式:# setfacl -m u:nebula:rw aclfile

ACL_USER_OBJ user:rw-
ACL_USER user:name:rwx
ACL_GROUP_OBJ group:rw-
ACL_GROUP group:name:rw-
ACL_OTHER other:—
ACL_MASK mask:rw-

default ACL: 继承ACL权限

没有设置ACL权限时:group权限和 UGO模型的权限是完全一致的
设置了ACL之后,group权限映射到ACL_MASK权限,ACL_GROUP_OBJ用来表示UGO模型权限

选项 功能
-m 配置后面的acl参数给文件/目录使用,不可与-x合用
-x 删除后续acl参数,不可与-m合用
-b 移除所有ACL配置参数
-k 移除默认的ACL参数
-R 递归配置acl参数
-d 配置“默认acl参数”,只对目录有效,在该目录新建的数据会引用此目录值

针对用户设置ACL:
原本的user1用户没有aclfile文件的写权限,通过setfacl可给用户赋权。
Linux文件系统权限管理ACL..._第1张图片
子文件也会从父目录里继承权限
tesfile继承了来自父目录的acl权限,用户user2对其有读写执行权限。
Linux文件系统权限管理ACL..._第2张图片
Linux文件系统权限管理ACL..._第3张图片
修改ACL权限
将user1对文件aclfile的rw权限修改为rwx权限。
Linux文件系统权限管理ACL..._第4张图片
删除ACL权限
-x删除时用户后不需跟权限类型,直接删除。-b则是移除全部的ACL权限。
Linux文件系统权限管理ACL..._第5张图片

权限掩码:umask,chmod

umask是用来指定“目前用户在新建文件或者目录时候的权限默认值”。它的功能可以说与chmod刚好相反,代表默认拿走的也就是说不要的权限。
chmod 222 umask=222 555

  • 文件默认权限: 凡是减的结果中有执行权限,需要加1
    666-umask 644
  • 目录的默认权限:
    777-umask 755
    为安全起见,文件默认不能有执行权限。
    Linux文件系统权限管理ACL..._第6张图片

特殊权限:SUID,GSID,SBIT

SUID 4
SGID 2
SBIT 1
chmod 1777 7777 0022

SUID 权限是在属主的x位上 出现s S
  • 1、仅仅对二进制程序有效
  • 2、执行者对于程序需要具有可执行权限
  • 3、仅仅在执行程序的过程中有效, 程序----->进程
  • 4、执行者将具有该程序的拥有者的权限

因为passwd命令有SUID权限,因此user1用户拥有修改密码的权限,这个权限来自root用户。而root是超级管理员,即使该文件没有任何权限,root用户仍然能执行。Linux文件系统权限管理ACL..._第7张图片

SGID 权限是在属组的x位上,出现s S
  • 1、对二进制程序有效
  • 2、执行者对于程序需要具有可执行权限
  • 3、执行者将具有该程序的属组的权限
  • 4、SGID主要作用于目录:在此目录下创建新的文件时,新的文件的属组和目录的属组相同

创建一个wedir目录,并赋权777
Linux文件系统权限管理ACL..._第8张图片
分别创建两个文件,同过给目录赋予SGID权限使得第二次创建的文件的属组变为root,并拥有root的权限。说明拥有SGID权限的目录下创建的文件也拥有该权限。
Linux文件系统权限管理ACL..._第9张图片

SBIT 针对other,/tmp,在执行权限权限位出现t T
  • 1、只针对目录有效
  • 2、用户在此目录下创建的文件或者目录,只有用户自己和root有权限删除

注意:原本权限位有执行权限时,用小写字母,否则用大写字母

tmp下的文件在不同用户下都可以编辑,不过由于有SBIT权限,只有文件所属用户和root用户有权删除。

我们先移除tmp的SBIT权限,发现不同用户可以对tmp下的文件进行编辑删除等操作。
Linux文件系统权限管理ACL..._第10张图片
当归还tmp的SBIT权限,除了文件所属用户和root用户外,其他用户无权删除。
Linux文件系统权限管理ACL..._第11张图片
我也来试一试,emmmmm,Permission denied。WDNMD,我的权限没了,我不玩了。
Linux文件系统权限管理ACL..._第12张图片

隐藏属性

lsattr:显示隐藏属性
chattr:修改文件的隐藏属性
选项 功能
-i 文件不能被删除,修改,同时不能新增内容
-a 只能添加内容,不能删除
-A atime不能被修改
-s 删除文件时数据块被释放
-c 经过压缩后存储

Linux文件系统权限管理ACL..._第13张图片
Linux文件系统权限管理ACL..._第14张图片

你可能感兴趣的:(学习小结)