美文网首页linux基础
Linux特殊权限-day14

Linux特殊权限-day14

作者: Linux运维 | 来源:发表于2020-03-16 19:47 被阅读0次

SUID、SGID、SBIT、特殊属性、默认权限

进程以何种方式,访问文件,取决于这个进程所运行的用户身份是否拥有对应的权限。

一、SUID

当我们为某个命令设定了 suid ,所有的普通用户使用该命令,都会以该命令的“属主”身份,执行该命令。(只能由root用户设定)
命令:
chmod u+s
或 chmod 4755

例如:所有普通用户对 /etc/shadow 都没有权限,当我们为 cat 命令设定 suid,普通用户就可以借助root用户身份去查看该目录。

 [root@10 ~]# ll /etc/shadow
----------. 1 root root 749 3月  16 20:55 /etc/shadow
[root@10 ~]# which cat    # 用which查看cat的绝对路径
/usr/bin/cat
[root@10 ~]# chmod u+s /usr/bin/cat
[root@10 ~]# ll /usr/bin/cat
-rwsr-xr-x. 1 root root 54160 10月 31 2018 /usr/bin/cat
二、SGID

表现形式:在文件的属组权限上显示一个数字s(执行权限),S大写(无执行权限)

当我们为某个命令设定 SGID ,所有的普通用户使用该命令,都会以改命令的“属组”身份执行该命令。
命令:
chmod g+s
或 chmod 2755

对于目录:将目录设置为sgid后,如果在该目录下创建文件,都将与该目录的所属组保持一致。

延伸:chmod +x 表示所有权限都加x(执行权限)

三、SBIT 粘滞位

只针对于目录

所有普通用户就算对该目录拥有w权限,也只能删除自己的文件,不能删除其他人的文件。(root用户除外)
命令:
chmod o+t
或 chmod 1777

四、特殊属性

命令:
chattr 只有root用户可以使用,用来修改文件系统的权限属性,建立凌驾于rwx基础权限之上的授权。

选项:
+  增加权限
-  减少权限
=  等于某个权限
a  让文件或目录仅可以追加内容
i  不得任意变更文件或目录

例如:

[root@10 ~]# chattr +a /mnt/file     #增加该文件仅可以追加内容,不能覆盖或删除
[root@10 ~]# lsattr /mnt/file     #查看权限属性

要点:如果想删除特殊属性,需要使用root身份,先取消属性(用chattr -a),然后删除

五、默认权限(UMASK)

1.默认系统规定的权限,目录 777,文件 666,UMASK表示要减去的权限。
例如,UMASK设置为 0022
则:
目录:777-022 = 755
文件:666-022 = 644

2.默认创建普通用户的家目录的权限位700,因为在 /etc/login.defs 中,UMASK设定的是077,我们可以对其进行修改。
/home:777-077 = 700

3.当root用户创建文件时,权限默认为644;当普通用户创建文件时,权限默认为664。

原因:在/etc/profile 中利用if条件语句对其UMASK的值进行了不同的输出,分别为022和002。
root用户:666 - 022 = 644
普通用户:666 - 002 = 664

拓展:

对于文件权限,UMASK的不同对其有不同的影响。

UMASK为偶数时,文件权限无影响
UMASK为奇数时,文件权限奇数位+1

相关文章

网友评论

    本文标题:Linux特殊权限-day14

    本文链接:https://www.haomeiwen.com/subject/qoityhtx.html