linux 什么是s权限、t权限?不是只有rwx权限吗
前言
在平常使用Linux中,我们通常会接触到rwx权限,即读、写、执行权限。是否有听说过s权限、t权限呢?不妨看看本博客,了解一下这两个权限的意义、和如何使用。
s 权限
简介
s即(SUID,Set UID)设置使文件在执行阶段具有文件所有者的权限,相当于临时拥有文件所有者的身份. 典型的文件是passwd. 如果一般用户执行该文件, 则在执行过程中, 该文件可以获得root权限, 从而可以更改用户的密码.
例如:ls -al /usr/bin/passwd
-rwsr-xr-x 1 pythontab pythontab 32988 2018-03-16 14:25 /usr/bin/passwd
如何使用?
我们可以通过字符模式设置s权限:chmod a+s filename,也可以使用绝对模式进行设置:
设置suid:将相应的权限位之前的那一位设置为4;
设置guid:将相应的权限位之前的那一位设置为2;
两者都置位:将相应的权限位之前的那一位设置为4+2=6。
注意:在设置s权限时文件属主、属组必须先设置相应的x权限,否则s权限并不能正真生效(c h m o d命令不进行必要的完整性检查,即使不设置x权限就设置s权限,chmod也不会报错,当我们ls -l时看到rwS,大写S说明s权限未生效)
总结
可执行的文件搭配这个权限,便能得到特权,任意存取该文件的所有者能使用的全部系统资源。请注意具备SUID权限的文件,黑客经常利用这种权限,以SUID配上root帐号拥有者,无声无息地在系统中开扇后门,供日后进出使用。
t 权限
简介
t 即(Sticky)要删除一个文档,您不一定要有这个文档的写权限,但您一定要有这个文档的上级目录的写权限。也就是说,您即使没有一个文档的写权限,但您有这个文档的上级目录的写权限,您 也能够把这个文档给删除,而假如没有一个目录的写权限,也就不能在这个目录下创建文档。
如何使用?
怎样才能使一个目录既能够让任何用户写入文档,又不让用户删除这个目录下他人的文档,t权限就是能起到这个作用。t权限一般只用在目录上,用在文档上起不到什么作用。
在一个目录上设了t权限位后,(如/home,权限为1777)任何的用户都能够在这个目录下创建文档,但只能删除自己创建的文档(root除外),这就对任何用户能写的目录下的用户文档 启到了保护的作用。
可以通过chmod +t filename 来设置t权限
总结
/tmp和 /var/tmp目录供所有用户暂时存取文件,亦即每位用户皆拥有完整的权限进入该目录,去浏览、删除和移动文件。
实际使用
文件权限"rwsr-sr-x"中的s是什么意思?
一般是可执行文件设置成这种形式
第一个s代表的是suid:他表示当其他的用户执行此命令时,可以取得和此文件的所有者一样的权限来取得系统资源
第二个s代表的是sgid:他表示当其他的用户执行此命令时,可以取得和此文件的属组一样的权限来取得系统资源
enjoy!!
本文源自:https://www.jb51.net/article/136934.htm
http://bbs.chinaunix.net/thread-161902-1-1.html
文章来源: guo-pu.blog.csdn.net,作者:一颗小树x,版权归原作者所有,如需转载,请联系作者。
原文链接:guo-pu.blog.csdn.net/article/details/107430033
- 点赞
- 收藏
- 关注作者
评论(0)