0
点赞
收藏
分享

微信扫一扫

特殊权限

特殊权限介绍

##基本权限
r:读
w:写
x:执行

##特殊权限:
#属主位s

0 ? 21:04:53 root@jinnan,10.0.0.101:~ # ll /bin/passwd
-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /bin/passwd

#属组位s
021:05:02 root@jinnan,10.0.0.101:~ # ll /bin/write
-rwxr-sr-x. 1 root tty 19624 Oct 31 2018 /bin/write

#其他用户位t
21:05:51 root@jinnan,10.0.0.101:~ # ll -d /tmp
drwxrwxrwt. 18 root root 4096 Apr 12 17:18 /tmp

特殊权限1:SetUID

# 1.普通用户可不可以修改密码?
可以,修改自己的密码

# 2./etc/shadow文件的作用?
存储用户密码的文件

# 3./etc/shadow文件的权限?
21:10:34 root@jinnan,10.0.0.101:~ # ll /etc/shadow
---------- 1 root root 3095 Apr 10 21:59 /etc/shadow

# 4.普通用户,是否可以修改/etc/shadow文件?
不可以,/etc/shadow文件,对于普通用户没有任何权限,所以不能读取,也不能写入内容

# 5.那么普通用户,为什么可以修改密码?
1)因为使用了passwd这个命令
2)passwd命令在属主权限位上,原本是x权限,变成了s权限
3)s权限在属主权限位,又叫做SetUID权限,SUID
4)作用:普通用户在使用有SUID权限的文件或命令时,会以该文件的属主身份去执行该命令

SetUID特性

# 1.原本属主位上如果有x权限,则SetUID为 s
023:05:52 root@jinnan,10.0.0.101:~ # ll -d home
drwxr-xr-x. 3 root root 20 Mar 21 18:59 home
023:06:07 root@jinnan,10.0.0.101:~ # chmod u+s home
023:06:35 root@jinnan,10.0.0.101:~ # ll -d home
drwsr-xr-x. 3 root root 20 Mar 21 18:59 home

# 2.原本属主位上如果没有x权限,则SetUID为 S
023:06:41 root@jinnan,10.0.0.101:~ # chmod u=rw- home
023:07:15 root@jinnan,10.0.0.101:~ # ll -d home
drwSr-xr-x. 3 root root 20 Mar 21 18:59 home

# 3.授权方式

- chmod u+s 文件名
023:06:07 root@jinnan,10.0.0.101:~ # chmod u+s home
023:06:35 root@jinnan,10.0.0.101:~ # ll -d home
drwsr-xr-x. 3 root root 20 Mar 21 18:59 home

- chmod 4xxx 文件名
023:08:44 root@jinnan,10.0.0.101:~ # chmod 4755 home
023:09:11 root@jinnan,10.0.0.101:~ # ll -d home
drwsr-xr-x. 3 root root 20 Mar 21 18:59 home

# 4.SetUID权限的数字是4000

特殊权限2:SetGID

021:05:02 root@jinnan,10.0.0.101:~ # ll /bin/write
-rwxr-sr-x. 1 root tty 19624 Oct 31 2018 /bin/write

##创建一个目录
023:11:01 root@jinnan,10.0.0.101:~ # mkdir /tmp/jinmulu

##给这个赋予SetGID权限
023:12:25 root@jinnan,10.0.0.101:~ # chmod g+s /tmp/jinmulu

##查看这个目录
023:12:30 root@jinnan,10.0.0.101:~ # ll -d /tmp/jinmulu
drwxr-sr-x 2 root root 6 Apr 12 23:11 /tmp/jinmulu

##用root创建一个文件
023:12:33 root@jinnan,10.0.0.101:~ # touch /tmp/jinmulu/jin.txt

##查看这个文件
023:14:40 root@jinnan,10.0.0.101:~ # ll /tmp/jinmulu
total 0
-rw-r--r-- 1 root root 0 Apr 12 23:14 jin.txt

##切换到普通用户
023:14:49 root@jinnan,10.0.0.101:~ # su - tangli1
Last login: Tue Apr 12 22:26:43 CST 2022 on pts/2
[tangli1@jinnan ~]$

##普通用户创建文件
[tangli1@jinnan ~]$ touch /tmp/jinmulu/nan.txt
touch: cannot touch ‘/tmp/jinmulu/nan.txt’: Permission denied #权限报错

##切换到root用户
[tangli1@jinnan ~]$ su - root
Last login: Tue Apr 12 23:05:47 CST 2022 from 10.0.0.1 on pts/0

##赋予这个目录777权限
023:17:50 root@jinnan,10.0.0.101:~ # chmod 777 /tmp/jinmulu

##查看目录权限
023:18:08 root@jinnan,10.0.0.101:~ # ll -d /tmp/jinmulu
drwxrwsrwx 2 root root 21 Apr 12 23:14 /tmp/jinmulu

##切换到普通用户
023:18:18 root@jinnan,10.0.0.101:~ # su - tangli1

##创建文件
[tangli1@jinnan ~]$ touch /tmp/jinmulu/nan.txt

##查看权限
[tangli1@jinnan ~]$ ll /tmp/jinmulu/nan.txt -d
-rw-rw-r-- 1 tangli1 root 0 Apr 12 23:20 /tmp/jinmulu/nan.txt

##将/tmp目录属主、属组改为tangli1
023:24:42 root@jinnan,10.0.0.101:~ # chown tangli1.tangli1
/tmp/jinmulu/

##查看权限
023:25:08 root@jinnan,10.0.0.101:~ # ll -d /tmp/jinmulu/
drwxrwsrwx 2 tangli1 tangli1 36 Apr 12 23:20 /tmp/jinmulu/

##切换到普通用户
023:25:23 root@jinnan,10.0.0.101:~ # su - tangli1
Last login: Tue Apr 12 23:19:48 CST 2022 on pts/0

##创建文件
[tangli1@jinnan ~]$ touch /tmp/jinmulu/jinnan.txt

##查看权限
[tangli1@jinnan ~]$ ll -d /tmp/jinmulu/jinnan.txt
-rw-rw-r-- 1 tangli1 tangli1 0 Apr 12 23:27 /tmp/jinmulu/jinnan.txt

SetGID特性

# 1.原本属组位上如果有x权限,则SetGID为 s
23:41:17 root@jinnan,10.0.0.101:~ # chmod g+s ceshi
023:41:25 root@jinnan,10.0.0.101:~ # ll -d ceshi
drwxr-sr-x 2 root root 6 Apr 12 23:40 ceshi

# 2.原本属组位上如果没有x权限,则SetGID为 S
023:42:09 root@jinnan,10.0.0.101:~ # chmod g+s ceshi
023:42:22 root@jinnan,10.0.0.101:~ # ll -d ceshi
drwxr-Sr-x 2 root root 6 Apr 12 23:40 ceshi

# 3.授权方式
- chmod g+s 文件名
023:42:09 root@jinnan,10.0.0.101:~ # chmod g+s ceshi
- chmod 2xxx 文件名

# 4.SetGID权限的数字是2000
023:43:02 root@jinnan,10.0.0.101:~ # chmod 2755 ceshi
023:43:18 root@jinnan,10.0.0.101:~ # ll -d ceshi
drwxr-sr-x 2 root root 6 Apr 12 23:40 ceshi
## 主要应用场景:文件共享

特殊权限3:SBIT

21:05:51 root@jinnan,10.0.0.101:~ # ll -d /tmp
drwxrwxrwt. 18 root root 4096 Apr 12 17:18 /tmp

粘滞位权限作用特性

# 1.带有粘滞位权限的目录下的所有文件,谁都可以读、写
# 2.带有粘滞位权限的目录下的文件只有属主能删除自己的文件,其他用户无法删除
# 3.带有粘滞位权限的目录,只有root能删除
# 4.授权方式
- chmod o+t 文件名
- chmod 1xxx 文件名
# 5.SBIT权限的数字是1000
# 6.其他用户权限位上有x权限:t 没有x权限 T

凌驾于root之上的权限

## 设置这个权限
chattr
i:只能查看文件内容,无法编辑
a:只能查看和追加文件内容,无法修改或覆盖源文件内容
+:设置,增加该权限
-:取消该权限
## 查看这个权限
lsattr 文件名

umask

##查看当前系统默认的umask
022:31:42 root@jinnan,10.0.0.101:~ # umask
0022
##修改系统默认的umask
22:31:53 root@jinnan,10.0.0.101:~ # umask 025
022:32:08 root@jinnan,10.0.0.101:~ # umask
0025

计算方法:
目录使用777 - umask
文件使用666 - umask
如果umask的位数上有奇数
文件使用666 - umask 在奇数位上加1

查看文件数字权限的方式

tr:按字符替换 sed:按整体替换 sed -i 's#SELINUX=enforcing#SELINUX=disabled#g'
/etc/sysconfig/selinux vim:按整体替换 :%s#SELINUX=enforcing#SELINUX=disabled#g

Linux中的单引号和双引号含义:

bash
有变量的情况下,有区别
双引号解析变量
单引号所见即所得
纯字符串的情况下,没有区别
awk
有变量的情况下,有区别
单引号解析变量
双引号所见即所得 awk -F '指定分隔符' '{print $N}' awk -F '[分隔符1分隔符2]' '{print $N}'
















































举报

相关推荐

0 条评论