粘滞位的了解及使用

一、权限

1.文件的权限

r (read) :可读取该文件的实际内容
w(write):可以编辑,新增或者修改该文件的内容(但不含删除该文件)
x(execute):代表该文件可以被系统执行

对于文件的r ,w, x来说,主要针对的"文件的内容"而言,与文件名的存在与否没有关系

2.目录的权限

r (read):具有读取目录结构列表的权限,用ls查看
w(write):写的权限操作包括:新建文件或目录、删除文件或目录(不论文件的权限是什 么)、对文件或目录重命名、移动文件或目录等
x(execute):目录的X权限代表的是用户能否进入该目录称为工作目录。拥有此权限,就可以cd进去,否则,将不能进入目录内部

二、粘滞位(粘着位)

1.介绍

(1)最常见的用法在目录上设置粘滞位,也只能针对⽬录设置,对于⽂件⽆效。设置了粘滞位后,只有目录内文件的所有者或者root才可以删除或移动该文件。如果不为目录设置粘滞位,任何具有该目录写和执行权限的用户都可以删除和移动其中的文件

(2)一个目录具有粘滞位,则在other的X位会表现为 t,或者T。T和t的区别在于,原来x位上有x权限,有了粘滞位则表现为t,否则,则表现为T

(3)在linux系统的实际应用中,粘滞位一般用于/tmp,/var/tmp目录,以防止普通用户删除或移动其他用户的文件

(4)粘滞位t权限给其它用户带来的安全限制,仅仅在于不能删除和移动/更名文件 (即粘滞位保护的是文件不被其他用户rm或mv,即使文件对其他用户有写权限,777都不行!),因为它针对的是目录

2.权限

(1)SetUID  =  4:在所有者设置的权限

只对二进制程序有效;执行者对于程序需要有x权限;在程序运行过程中,执行者拥有程序拥有者的权限;suid会在所属用户权限本应是x的地方显示s;

设置suid权限的方法:a.文件当前数字权限前面加4。b.chmod u+s  目录(设置)    chmod u-s  目录(取消)

eg:/etc/shadow文件权限是000,只有root用户能对它有查看权限,普通用户无法查看它的内容

(2)SetGID  =  2:在所属组设置的权限

针对文件的话,sgid只对二进制程序有用;程序执行着要有x权限;执行者在执行过程中会获得改程序用户组的权限sgid会在所属用户组权限本应是x的地方显示s;

设置suid权限的方法:a.文件当前数字权限前面加2。b.chmod g+s  目录(设置)    chmod g-s  目录(取消)

eg:/usr/bin/locate文件中用户组权限中应该出现x的位置显示的s,表示这个locate命令具有sgid权限,而普通用户只有x权限而没有rw权限

(3)粘着位  =  1:在其他人的位置设置的(使用t来表示)

只能针对目录而言,对文件来说无效!当用户对目录拥有wx权限时,用户在该目录创建的文件或目录,只有自己与root才可以删除,设置了粘滞位t权限的目录其他用户权限位置的"x"将变为"t"

设置粘滞位权限的方法:a.文件当前数字权限前面加1。b.chmod o+t  目录(设置)    chmod o-t 目录(取消)

eg1:查看/tmp  /var/tmp目录的权限 

eg2:设置粘滞位t权限

a. 用root身份创建所属者和所属组都是root权限为777(可读可写可执行)的/opt/tom目录(其他用户可以删除目录内容)

b. 在/opt/tom目录下创建两个文件,权限默认,其他用户可以删除目录内容

c. 切换到普通用户,去删除刚刚在root下新建的两个文件ceshi1 和 ceshi2。发现可以删除

普通用户对/opt/tom目录下的文件可以删除和重命名权限,尽管文件的other用户是r--,但/opt/tom目录下的other用户是rwx(普通用户对/opt/tom目录有可写权限,对该目录下的文件可以进行增删改操作)

d.回到root用户下,给/opt/tom目录加上粘滞位,查看发现other 的x权限变为t,则添加成功,再在该目录下新建文件test1和test2.sh

e.切换到普通用户下,对文件test1和test2.进行删除和重命名操作(结果不能删除和重命名,即使目录的权限是777,说明粘滞位给其他用户带来安全限制)

f. 证实文件所有者和root依旧可以删除文件。用root对该文件进行删除操作(可以删除)

g. 验证当文件对other用户有可写权限的时候,粘滞位t权限的保护作用(尽管文件t1,t2的权限为777,但目录设置了粘滞位t权限,其他用户还是不能进行删除和重命名操作)

h.回到root用户,删除t1、t2文件

i. 删除粘滞位t权限的设置

结论:
当一个目录被设置为"粘滞位"的t权限后,则该目录下的文件只能由  
1. 超级管理员(root)删除或移动/更名(rm或mv)  
2. 该目录或文件的所有者删除或移动/更名(rm或mv)

注意:
1. 虽然目录有了粘滞位t权限,other用户不能对该目录的文件进行删除或者移动操作,但如若other对该文件由w权限,还是可以进行修改文件内容
2. 粘滞位只对目录有效,对文件无效

最新文章

  1. webapi returntype
  2. WPF-编程问题和解决
  3. 清除Windows系统桌面快捷方式小箭头
  4. Oracle Database 11G R2 标准版 企业版 下载地址(转)
  5. 我对 impress.js 源码的理解
  6. UIButton 详解
  7. NOIP2015 普及组(Junior) 解题报告
  8. 『C # 开发』VS 2008 修改默认生成代码模版
  9. OpenCV在MFC图像控件内显示图像
  10. 使用HTML5的canvas做图片剪裁
  11. filezilla里怎么解决中文乱码问题
  12. Maven 构建浏览器解析userAgent类
  13. Cocos Creator 节点
  14. #WEB安全基础 : HTTP协议 | 0x7 学会使用wireshark分析数据包
  15. MySQL 之 MHA + ProxySQL + keepalived 实现读写分离,高可用(二)
  16. python3 三元表达式,列表解析
  17. [No0000F3]C# 结构(Struct)
  18. UI设计教程:关于版式设计
  19. alembic教程
  20. sort与qsort的区别与联系

热门文章

  1. 4. Spark在集群上运行
  2. http 请求体数据--ngx
  3. 内核crash>>>磁盘空间小 怎么处理
  4. 邻居子系统 arp 状态图
  5. VS2017新建MVC+ORM中的LinqDb访问数据库项目
  6. synchronized 到底该不该用?
  7. SNMP介绍及使用,超有用,建议收藏!
  8. App安全常见漏洞修复建议
  9. Python学习第三天 --- 分支、循环、条件、枚举
  10. FL Studio中的文件设置介绍