Linux中的特殊权限

Wesley13
• 阅读 632

Linux中除了普通权限之外,还有三个特殊权限。

       SUID::以文件的所属用户执行,而非执行文件的用户,多用于可执行文件,设置suid后,在权限位中,所属用户的 最后一个权限为变为s,添加SUID权限可用“+s”表示。

    例如:passwd

[adam@ultraera ~]$ which passwd
/usr/bin/passwd
[adam@ultraera ~]$ ls -l /usr/bin/passwd 
-rwsr-xr-x. 1 root root 25980 Feb 22  2012 /usr/bin/passwd
[adam@ultraera ~]$

        SGID:主要针对文件夹,在设置了SGID的文件夹中创建任何新文件都继承该文件的所属组,设置sgid后,在权限位中,所属组的最后一个权限位变为s,添加SGID权限可用“+s”表示。

例如:

[adam@ultraera ~]$ mkdir ultraera
[adam@ultraera ~]$ ls -l
total 4
drwxrwxr-x 2 adam adam 4096 Nov 27 21:09 ultraera
[adam@ultraera ~]$ chmod g+s ultraera/
[adam@ultraera ~]$ ls -l
total 4
drwxrwsr-x 2 adam adam 4096 Nov 27 21:09 ultraera
[adam@ultraera ~]$ su 
Password: 
[root@ultraera adam]# mkdir -p ultraera/test
[root@ultraera adam]# ls -l ultraera/
total 4
drwxr-sr-x 2 root adam 4096 Nov 27 21:09 test
[root@ultraera adam]#

        sticky:针对文件夹,对目录拥有写权限的用户,仅可以删除其所拥有的文件,无法删除其他用户所拥有的文件,设置了sticky之后,在权限位,other的最后一个权限位变为t,添加SGID权限可用“+t”表示。

例如:

[root@ultraera tmp]# mkdir ultraera
[root@ultraera tmp]# chmod a=rwx,o+t ultraera/
[root@ultraera tmp]# ls -ld ultraera/
drwxrwxrwt 2 root root 4096 Nov 27 21:29 ultraera/
[root@ultraera tmp]# useradd user1
[root@ultraera tmp]# useradd user2
[root@ultraera tmp]# su user1
[user1@ultraera tmp]$ touch ./ultraera/test
[user1@ultraera tmp]$ ls -l ultraera/
total 0
-rw-rw-r-- 1 user1 user1 0 Nov 27 21:31 test
[user1@ultraera tmp]$ exit
exit
[root@ultraera tmp]# su user2
[user2@ultraera tmp]$ rm -f ./ultraera/test 
rm: cannot remove `./ultraera/test': Operation not permitted
[user2@ultraera tmp]$

同样使用chmod来设定特殊权限,与普通权限一样,特殊权限也可以用数字表示:

suid : 4

sgid : 2

sticky : 1

chmod  4644 filename                  #设置文件suid权限
chmod  2755 flodername             #设置文件夹sgid权限
chmod  1755 flodername             #设置文件夹sticky权限

好了,以上是所有内容了.

如果你文章中有不正确的地方,或者你有更好的idea。

欢迎来和我分享。E-mail:luchuanjia@msn.com

本文出自 “一杯白开水” 博客,请务必保留此出处http://ultraera.blog.51cto.com/6640392/1583493

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
CTF中对web服务器各种提权姿势
    在我们拿下服务器web服务往往只是低权限用户,对于内网渗透,我们往往需要root权限,Linux系统提权包括使用溢出漏洞已及利用系统配置文件。提权前提:1.拿到低权限shell2.被入侵机器上有nc,python,perl等常见linux下的工具3.有权上传下载文件1. 利用内
Wesley13 Wesley13
3年前
030 SSM综合练习06
1.权限操作涉及的三张表(1)用户表信息描述users!(https://oscimg.oschina.net/oscnet/a4a2b1f943cbc2db1c8ddd613e7ed00a9ae.png)sql语句:CREATETABLEusers(idVARCHAR2(32)DEFAU
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Wesley13 Wesley13
3年前
2.18 特殊权限set_uid 2.19 特殊权限set_gid 2.20 特殊权限stick_bit 2.21 软链接文件 2.22 硬连接文件
set\_uid权限说明:setuid权限针对二进制可执行文件,使文件在执行阶段具有文件所有者的权限。比如passwd这个命令就具有该权限。当普通用户执行passwd命令时,可以临时获得root权限,从而可以更改密码。作用:setuid的作用是保证普通用户临时拥有该命令所有者的身份。给一个文件设置成setuid,前提这个文件是一个二
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这