Linux 文件特殊权限和访问控制列表

文件特殊权限

  suid: set uid,属主有s权限,意味着用户在执行此程序时,其进程的属主不再是发起者本人,而是这个程序文件的属主.如果属主为root则拥有超级用户管理员权限,将直接威胁系统安全.

  sgid: set gid,属组有s权限,意味着执行此程序时,其进程的属组不再是运行者本人所属的基本组,而是此程序文件的属组.

  sticky: 粘贴位,附加other的权限上,表现为t 加上此位用户只能删除自己文件.

  suid、sgid、sticky亦可用八进制方式

   表示如下:

     000 即suid、sgid、sticky均为空

     001 即sticky为t,表示1

     010 即sgid,表示2

     011 即sgid+sticky,表示3

     100 即suid,表示4

     101 即suid+sticky,表示5

     110 即suid+sgid,表示6

     111 即suid+sgid+sticky,表示7

   示例:

wKioL1UL186SYXnSAAD4L3yU-pg367.jpg

suid

 用法: chmod u+|-s /path/to/somefile 

   s:表示属主原有执行权限

   S:表示属主无执行权限

 示例:

wKioL1ULkTajAAZ3AAHWnRmShL0257.jpg


sgid

 用法: chmod g+|-s /path/to/somefile

 示例:

wKioL1ULuciRRnLaAAGaccepdJg077.jpgwKiom1ULuKmx64rqAAEA5HSrNY8549.jpg


sticky

 用法: chmod o+|-t /path/to/somefile

   t:表示属主原有执行权限

   T:表示属主无执行权限

wKiom1ULvfWjNVmdAAFWp8N_lfM608.jpg

 示例:

wKioL1ULz5rTROn4AAIMdN03FPQ589.jpg


文件访问控制列表

  file access contrl list(文件访问控制列表)

    主要目的是提供传统的owner,group,others的read,write,execute权限之外的具体权限设置,ACL可以针对单一用户、单一文件或目录来进行r,w,x的权限控制,对于需要特殊权限的使用状况有一定帮助。如,某一个文件,不让单一的某个用户访问。

  ACL控制命令:

   getfacl:查看文件或目录的访问控制列表

   setfacl:设置文件或目录的访问控制列表

    setfacl 参数

      -m:新增或修改ACL中的规则 

      -x:移出ACL中的规则  

      -b:删除全部的acl规则

      -k:删除默认的acl规则

      -R:递归设置acl,包括子目录

      -d:设置默认acl

   用法:

     setfacl options /path/to/somefile

   示例:

wKiom1UMxJnyLpjDAAFI-GAquyg938.jpgwKiom1UMxN3Ba6aEAAECD-d33FQ441.jpg

  

  setfacl亦可禁止某用户访问指定文件

   示例:

wKioL1UMz33yFY5NAADgmRtaP2s680.jpg

 facl默认不支持额外挂载文件系统,额外系统挂载时需添加acl选项。

   示例:

wKiom1UMzLnSCMRdAAH1388xn1k811.jpg

你可能感兴趣的:(SGID,SUID,Sticky,facl,文件特殊权限)