linux 目录的粘滞位,Linux浅谈SUID,SGID,Sticky粘滞位对目录以及文件的相关作用
我们知道在Linux中,root管理员的权限是很大的,能够支持执行绝大部分程序以及命令进而对文件进行相对应的修改,写入。当然这些作用只能体现在root管理员上。但是有一个现象,有些普通用户是可以通过passwd命令进行修改自己密码的,进而间接就修改了/etc/passwd的文件。正规思想:普通用户是无法修改/etc/passwd文件的。在这里,普通用户其实是运用了SUID权限。当然还有SGID,Sticky粘滞位。我们一一打开神秘的面面纱。
1.首先我们先来说说SUID权限的神奇之处。
之前提到了普通用户能够运用passwd间接修改/etc/passwd文件,我们先确认一下passwd命令的权限属性:
![](https://s4.51cto.com/images/blog/201807/29/b57d2f2673f6d18f301bb49cd6a97e32.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
看上图,passwd 是存在这个路径中的,它是个外部命令。在所有者权限那里看到有一个s标识,s就相当于x权限。这个s对于普通用户的话,是可以进行继承的。简单说,passwd对root用户有什么权限,一个用户执行passwd的时候,也就临时继承了root账户的相应权限,这样一来就可以理解为什么普通用户可以对用户配置文件进行修改了。记住只对passwd这个命令起作用。
SUID设置方法:
模式法:chmod u+s 相应的可执行的命令程序。数字法:chmod 4+(原始可执行程序权限)suid的权限独立于普通权限的。
总结一下SUID:
(1)SUID一般都作用于二进制文件上,一般不作用在目录上。
(2)当一个普通用户在执行设置了SUID的可执行程序时,那么它就继承了原有所属者的权限。
以上就是SUID的相应介绍。
2.SGID的神奇之处
SGID这个权限主要是作用在目录上的,一般运用在小组项目中。比如一个设置一个专用目录给一个小组进行使用,里面的文件可以对组成员进行开发使用。而且所有新创建的文件都属于一个组。这样一来小组的工作效率就会很高了,方便管理。那么这么好的一个设想,该如何实现呢? 这就要用到SGID权限了。
sgid设置方法:
模式法:chmod g+s 相对应的目录或者可执行文件。
数字法:chmod 2 (原始目录权限)suid权限同样独立原始权限。
举个例子:
先看这个目录的所有者以及目录权限
这个目录的所属组时root ,当然新建的文件也都是属于root的。组的权限是rx权限。那么组员是可以对里面的文件进行查看访问,以及相关操作的。
下面对它设置sgid权限,改变它的所属组,以及新建文件,看效果。
先进行设置sgid
已经发生了变化,多出了一个s,说明拥有了sgid权限,这个目录。
这里修改目录的所属组,这样的话,接下来的文件所属者会自动分配为目录所属组的组名。
看效果:
看,自动获取所属组的,这样的就大大提升了用户对该文件的使用效果。可以在haoxianwang组里添加很多组员的。可想而知它的方便,高效。
总结一下sgid:
(1)作用在目录上,当目录下新建文件时,以及文件夹时,那么自动获取目录的所属组作为文件或者文件夹的所属组。
(2)它也可以对二进制文件生效,但是很少使用。
接下来介绍一下sticky粘滞位的作用
sticky权限只对目录有作用,而且只针对其他人(other)。这个粘滞位,其实是起到了安全的作用。如果对目录了读写执行权限,那么任何人就可以删除目录中的文件了,哪怕文件本身没有写权限和执行权限。这个时候sticky粘滞位就体现出来了。它的作用就是所有人只能创建自己的文件,以及删除自己的文件。其他人的你是触碰不到的。
废话不多说,上图!
将目录设置上sticky权限,这样的话,目录的安全性就高了。
我们试试删除文件,文件我给设置了读写执行权限,目录也具有执行权限,我们看看删除文件的效果。
可以看到是不允许删除的。这样就大大提高了文件的安全性。
总结一下:
sticky粘滞位权限只针对目录,只对目录有作用。
好啦,到这里基本介绍完毕。
本人刚入运维道路,知识哪里有不周到之处,还请大佬们多多指导。
感谢大家的阅读参阅!
linux 目录的粘滞位,Linux浅谈SUID,SGID,Sticky粘滞位对目录以及文件的相关作用相关推荐
- Linux文件系统上的特殊权限 SUID, SGID, Sticky(粘之位)
每个人都有自己的梦想,我想把它写出来. Linux文件系统上的特殊权限 SUID, SGID, Sticky(粘之位) 1 文件基本权限 r读, w写, x执行 user, group, other ...
- linux基础2-cd、mkdir、touch、umask、chattr、lsattr、SUID/SGID/Sticky Bit
一 cd : . 代表当前目录 .. 代表上一层目录 - 代表前一个工作目录 ~ 代表[目前用户身份]所在的自家目录 与cd效果相同 ~account 代表 account 这个用户的自家家目录 二m ...
- 浅谈无缓存I/O操作和标准I/O文件操作区别 (转载)
首先,先稍微了解系统调用的概念: 系统调用,英文名system call,每个操作系统都在内核里有一些内建的函数库,这些函数可以用来完成一些系统系统调用把应用程序的请求传给内核,调用相应的的内核函数完 ...
- linux应用程序设置粘滞位,linux 权限设置和SUID,SGID以及粘滞位
我们知道文件的权限可以用三个八进制数字表示.其实文件的权限应该用四个八进制来表示,不过用 ls -l 命令时,只显示三个罢了.那个没有显示的八进制数字其实是第一个,它用来设定一些特殊权限.这个八进制数 ...
- 【Linux】文件特殊权限 SUID/SGID/Sticky Bit
linux中除了常见的读(r).写(w).执行(x)权限以外,还有3个特殊的权限,分别是setuid.setgid和stick bit 1.setuid.setgid 先看个实例,查看你的/usr/b ...
- 大白菜浅谈Windows 7 32位与64位之区别
如今安装Windows 7已经不是什么新鲜事儿了,如果你还没有装Windows 7,那未免也太Out了.说起Windows 7的好处,那真是一堆一堆的,所以别犹豫,赶紧装一个吧. 哎,等等,装之前咱得 ...
- Linux TCP server系列(4)-浅谈listen与大并发TCP连接
背景: 服务器在调用listen和accept后,就会阻塞在accept函数上,accpet函数返回后循环调用accept函数等待客户的TCP连接.如果这时候又大量的用户并发发起connect连接,那 ...
- linux配置usb主从_杂集:浅谈关于Mongodb数据库主从复制
Linux下Mongodb数据库主从复制配置 Mongodb的三种集群搭建的方式: Master-Slaver:主从[目前被副本集取代]. Replica Set:副本集. Sharding:切片. ...
- Linux和unix中 awk 的print浅谈
原文地址:http://blog.csdn.net/ckstory/article/details/6229032 awk '{print;}' 文件名 ...
最新文章
- python读取文件某一行-python计算文件的行数和读取某一行内容的实现方法
- Web安全系列(二):XSS 攻击进阶(初探 XSS Payload)
- 【Hibernate】HibernateCallback总结
- Mybatis缓存配置
- 全国计算机等级考试题库二级C操作题100套(第23套)
- 新手入门指导:Vue 2.0 的建议学习顺序
- 美团的DBProxy实践
- 95-290-050-源码-内存管理-堆外内存与堆内内存概述
- javascript class static
- 【XNA4.0】动画
- 【知识图谱】一文全览,ICLR 2020 上的知识图谱研究
- 在html5中插入flash,如何将Flash嵌入到HTML5中?
- 腾讯云下centos git 克隆远程仓库
- Duilib corner属性
- 如何选择适合你的兴趣爱好(二十二),羽毛球
- ALSA子系统(十七)------支持Type-C耳机驱动
- linux内核的原子操作简述
- 最新易语言调用大漠插件制作脚本入门教程
- MIC29302WU-TR高电流、高精度、低压差的稳压器
- 马云:阿里巴巴不差钱也无黑幕