Linux特殊权限及UMASK介绍

Linux特殊权限介绍

[root@www ~]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 6月  10 2014 /usr/bin/passwd

[root@www ~]# ll /usr/bin/write
-rwxr-sr-x. 1 root tty 19624 4月  11 2018 /usr/bin/write

[root@www ~]# ll /tmp/ -d
drwxrwxrwt. 9 root root 4096 4月   3 09:49 /tmp/

SUID

全拼:set uid

在属主权限位上,本来应该是x执行权限出现了一个s

一般是针对可执行文件

如果一个可执行文件,在属主权限位的x位上有s权限,那么证明该文件有set uid特殊权限。
set uid:任何用户(除了root外)执行具有suid权限的文件时,会以该文件属主的身份去执行


## SUID授权
# chmod ugo方式
[root@www ~]# chmod u+s 文件或目录

# chmod number方式 4000
[root@www ~]# chmod 4755 aaaa
[root@www ~]# chmod 4000 aaaa

注意:当授权文件,原本属主位上有x权限时,是s,原本属主位上没有x权限时,是S

SGID

全拼:set gid权限

在属组权限位上,本来应该是x执行权限出现了一个s

一般是针对目录,也有可执行文件(大部分针对目录)

[root@www ~]# ll /usr/bin/write
-rwxr-sr-x. 1 root tty 19624 4月  11 2018 /usr/bin/write

1.针对用户组权限位修改,用户创建的目录或文件所属组和该目录的所属组一致。
2.当某个目录设置了sgid后,在该目录中新建的文件不在是创建该文件的默认所属组
3.使用sgid可以使得多个用户之间共享一个目录的所有文件变得简单。

主要目的:共享目录

## SGID授权方式
# chmod ugo方式
[root@www ~]# chmod g+s /tmp/test/

# chmod number方式  2000
[root@www ~]# chmod 2000 3

注意:当授权文件,原本属组位上有x权限时,是s,原本属组位上没有x权限时,是S

SBIT(粘滞位)

sticky(SI TI KI)粘滞

在其他用户权限位上,本来应该是x执行权限出现了一个t

普通用户对该目录拥有w和x权限,即普通用户可以在此目录中拥有写入权限,如果没有粘滞位,那么普通用户拥有w权限,就可以删除此目录下的所有文件,包括其他用户简历的文件。但是一旦被赋予了粘滞位,除了root可以删除所有文件,普通用户就算有w权限也只能删除自己建立的文件,而不能删除其他用户简历的文件。

系统中存在的/tmp目录是经典的粘滞位目录,谁都有写权限,因此安全成问题,常常是木马第一手跳板。

## SB授权方式
# chmod ugo 方式
[root@www ~]# chmod o+t SB

# chmod number方式
[root@www ~]# chmod 1755 IT

注意:当授权目录,原本其他用户权限位上有x权限时,是t,原本其他用户权限位上没有x权限时,是T

命令中的‘‘慈禧‘‘

# 当创建一个用户用户的时候:
1.创建用户   信息记录到 > /etc/passwd
1.1 用户相关的密码  记录到 > /etc/shadow
2.创建用户组  信息记录到 > /etc/group
2.1 用户组相关的密码 记录到 > /etc/gshadow

chattr 枷锁(root都无法操作被chattr命令加锁的文件)
i:上锁,什么都不能做,只能看
a:只能看和追加内容(不能覆盖)

lsattr 查看额外的权限

Linux系统进程掩码 UMASK

[root@www ~]# umask
0022

mkdir dir
0777
0022
----
0755

touch file
0666
0022
----
0644


[root@www ~]# umask 0033
[root@www ~]# umask
0033

dir:744
file:644

[root@www ~]# umask 0011
dir:766
file:666

0777
0011
----
0766

0666
0011
----
0655
0666

[root@www ~]# umask 0044
dir:733
file:622

umask计算,当umask中出现奇数时:目录计算方式不变,但是奇数位的结果要+1
0777
0033
----
0744

0666
0033
----
0633
0644



[root@www ~]# umask 0045
dir:732
0777
0045
----
0732

file:622

0666
0045
----
0622

Linux特殊权限及UMASK介绍

上一篇:cmd命令行编码设置


下一篇:正则这个小东东