bin文件怎么修改_Linux文件权限连载第三篇之SUID、SGID、SBIT特殊权限你会用吗?...

请关注本头条号,每天坚持更新原创干货技术文章。

如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习

1. 前言

Linux文件权限除了r、w、x外还有s、t、i、a权限,本文将会讲解这三个特殊权限的使用方法已经注意事项。

6bc48049f9a65749a0e9fd21a8f9081f.png

2. 了解特殊权限

我们先来看一下

[root@zcwyou ~]# ll /usr/bin/passwd

-rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd

e4b042a1712d6c8c56b6867c94844b7b.png

查看SUID的使用案例

我们可以看到,rws,这就是一个具有特殊权限的文件。再来看一个例子:

[root@zcwyou ~]# ll /usr/bin/locate

-rwx--s--x. 1 root slocate 40520 4月 11 2018 /usr/bin/locate

留意下图中的s

f67ee5b9818f729d370f638a9283d459.png

查看GUID的使用案例

再来看第三个例子:

[root@zcwyou ~]# ls -ld /tmp/

drwxrwxrwt. 8 root root 172 2月 23 03:15 /tmp/

留意下图中的t

395a898bf2d7cf802a09a963cad036dc.png

查看SBIT的使用案例

其实,以上三个案例分别代表了SUID、SGID、SBIT的应用。

3. 理解suid

当s出现在文件拥有者的x权限上时,如我们上面看到的/usr/bin/passwd这个文件的权限时-rwsr-xr-x,此时就被称为SET UID简称SUID.SUID对于一个文件有什么限制和功能呢?SUID权限仅对二进制可执行文件有效执行者对于该文件具有x的权限本权限仅在执行该文件的过程中有效执行者将具有该文件拥有者的权限例如普通用户用passwd修改自己的命令,实际上最终更改的是/etc/passwd文件. 此文件时用户管理配置文件,只有root权限才能更改。

我们来看看/etc/passwd的文件。

[root@zcwyou ~]# ll /etc/passwd

-rw-r--r--. 1 root root 1111 2月 10 20:18 /etc/passwd

a41859129d245a77c33ce4286fa11056.png

理解suid

从图中可以看出,只有root用户才能修改/etc/passwd这个文件,但实际上,任何用户都有权限修改自己的信息,这个文件保存着任意用户的信息,为什么呢?

因为我们在修改用户信息时,不是直接修改这个文件的,而是通过/usr/bin/passwd这个工具去修改的,而这个工具,是直接借用root身份修改的。

此时普通用户通过执行passwd命令,临时拥有root权限,间接的修改/etc/passwd,以达到修改自己密码的权限。

4. 理解SGID

当s出现在目录或文件所属群的x权限上时,此时就称为SET GID简称SGID,那SGID对文件和目录分部有哪些功能呢?

4.1 SGID对目录的作用

SGID对目录使用者若对于此目录具有 r 与 x 的权限时,该使用者能够进入此目录使用者在此目录下的群组将会变成该目录的群组若使用者在此目录下具有 w 的权限(可以新建文件),则使用者所创建的新文件,该新文件的群组与此目录的群组相同

4.2 SGID对文件的作用

SGID 对二进制可执行文件有效程式执行者对于该文件来说,需具备 x 的权限执行者在执行的过程中将会获得该文件群组的支援(用于改文件群组的权限)

5. 理解SBIT

当s出现在目录其他用户的x权限上时,此时就称为Sticky Bit简称SBIT,那SBIT有哪些限制和作用呢?仅对目录有效,对文件无效当使用者在该目录下建立文件或目录时(有权限的情况下),仅自己与 root 才有权力删除新建的目录或文件我们知道/tmp目录是这样的权限。

也就是说,如果用户A在/tmp下建立一个文件,该文件只有A用户才能删除(root例外)

现在我们来验证下,先用root账号在tmp文件中创建一个文件test.txt,然后用zcwyou(其他账号)进入该目录,删除test文件,看看发生什么情况

9131134f1dc85f5e868a4a51638878e3.png

理解SBIT

上图表明,一个具有rwxrwxrwx,777权限的目录,并不能随意删除文件。这就是SBIT的作用。

6. 如何设置SUID、SBID、SBIT

操作这些标志与操作文件权限的命令是一样的, 都是使用命令chmod

和设置和基本权限(rwx)方法基本,可以通过数字设置也可以通过符号设置

数字设置

SUID:4

SGID:2

SBIT:1

符号设置(+-=)

SUID:u+s

SGID:g+s

SBIT:o+t

举例:

[zcwyou@zcwyou ~]$ touch test.txt[zcwyou@zcwyou ~]$ chmod 4755 test.txt; ll test.txt

-rwsr-xr-x. 1 zcwyou zcwyou 0 2月 23 04:41 test.txt

[zcwyou@zcwyou ~]$ chmod 6755 test.txt; ll test.txt

-rwsr-sr-x. 1 zcwyou zcwyou 0 2月 23 04:41 test.txt

[zcwyou@zcwyou ~]$ chmod 1755 test.txt; ll test.txt

-rwxr-xr-t. 1 zcwyou zcwyou 0 2月 23 04:41 test.txt

[zcwyou@zcwyou ~]$ chmod 7666 test.txt; ll test.txt

-rwSrwSrwT. 1 zcwyou zcwyou 0 2月 23 04:41 test.txt

图6:设置Linux文件特殊权限实用案例

这里 S,T 都是大写是因为文件本身不具有X权限,而 S,T 权限设置成功的。

前提是文件具有 X 权限,因此大写的 ST 代表文件无这些特殊权限。

7. 总结

Linux权限较为复杂,也比较多的安全保护机制,比如传统的rwx,结合本文的特殊权限,再结合文件acl,最后再结合SElinux。这些安全措施能极大提升操作系统的安全性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值