特殊权限介绍
r:读
w:写
x:执行
0 ? 21:04:53 root@jinnan,10.0.0.101:~
-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /bin/passwd
0 ✓ 21:05:02 root@jinnan,10.0.0.101:~
-rwxr-sr-x. 1 root tty 19624 Oct 31 2018 /bin/write
21:05:51 root@jinnan,10.0.0.101:~
drwxrwxrwt. 18 root root 4096 Apr 12 17:18 /tmp
特殊权限1:SetUID
可以,修改自己的密码
存储用户密码的文件
21:10:34 root@jinnan,10.0.0.101:~
---------- 1 root root 3095 Apr 10 21:59 /etc/shadow
不可以,/etc/shadow文件,对于普通用户没有任何权限,所以不能读取,也不能写入内容
1)因为使用了passwd这个命令
2)passwd命令在属主权限位上,原本是x权限,变成了s权限
3)s权限在属主权限位,又叫做SetUID权限,SUID
4)作用:普通用户在使用有SUID权限的文件或命令时,会以该文件的属主身份去执行该命令
SetUID特性
0 ✓ 23:05:52 root@jinnan,10.0.0.101:~
drwxr-xr-x. 3 root root 20 Mar 21 18:59 home
0 ✓ 23:06:07 root@jinnan,10.0.0.101:~
0 ✓ 23:06:35 root@jinnan,10.0.0.101:~
drwsr-xr-x. 3 root root 20 Mar 21 18:59 home
0 ✓ 23:06:41 root@jinnan,10.0.0.101:~
0 ✓ 23:07:15 root@jinnan,10.0.0.101:~
drwSr-xr-x. 3 root root 20 Mar 21 18:59 home
- chmod u+s 文件名
0 ✓ 23:06:07 root@jinnan,10.0.0.101:~
0 ✓ 23:06:35 root@jinnan,10.0.0.101:~
drwsr-xr-x. 3 root root 20 Mar 21 18:59 home
- chmod 4xxx 文件名
0 ✓ 23:08:44 root@jinnan,10.0.0.101:~
0 ✓ 23:09:11 root@jinnan,10.0.0.101:~
drwsr-xr-x. 3 root root 20 Mar 21 18:59 home
特殊权限2:SetGID
0 ✓ 21:05:02 root@jinnan,10.0.0.101:~
-rwxr-sr-x. 1 root tty 19624 Oct 31 2018 /bin/write
0 ✓ 23:11:01 root@jinnan,10.0.0.101:~
0 ✓ 23:12:25 root@jinnan,10.0.0.101:~
0 ✓ 23:12:30 root@jinnan,10.0.0.101:~
drwxr-sr-x 2 root root 6 Apr 12 23:11 /tmp/jinmulu
0 ✓ 23:12:33 root@jinnan,10.0.0.101:~
0 ✓ 23:14:40 root@jinnan,10.0.0.101:~
total 0
-rw-r--r-- 1 root root 0 Apr 12 23:14 jin.txt
0 ✓ 23:14:49 root@jinnan,10.0.0.101:~
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
[tangli1@jinnan ~]$ su - root
Last login: Tue Apr 12 23:05:47 CST 2022 from 10.0.0.1 on pts/0
0 ✓ 23:17:50 root@jinnan,10.0.0.101:~
0 ✓ 23:18:08 root@jinnan,10.0.0.101:~
drwxrwsrwx 2 root root 21 Apr 12 23:14 /tmp/jinmulu
0 ✓ 23:18:18 root@jinnan,10.0.0.101:~
[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
0 ✓ 23:24:42 root@jinnan,10.0.0.101:~
/tmp/jinmulu/
0 ✓ 23:25:08 root@jinnan,10.0.0.101:~
drwxrwsrwx 2 tangli1 tangli1 36 Apr 12 23:20 /tmp/jinmulu/
0 ✓ 23:25:23 root@jinnan,10.0.0.101:~
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特性
23:41:17 root@jinnan,10.0.0.101:~
0 ✓ 23:41:25 root@jinnan,10.0.0.101:~
drwxr-sr-x 2 root root 6 Apr 12 23:40 ceshi
0 ✓ 23:42:09 root@jinnan,10.0.0.101:~
0 ✓ 23:42:22 root@jinnan,10.0.0.101:~
drwxr-Sr-x 2 root root 6 Apr 12 23:40 ceshi
- chmod g+s 文件名
0 ✓ 23:42:09 root@jinnan,10.0.0.101:~
- chmod 2xxx 文件名
0 ✓ 23:43:02 root@jinnan,10.0.0.101:~
0 ✓ 23:43:18 root@jinnan,10.0.0.101:~
drwxr-sr-x 2 root root 6 Apr 12 23:40 ceshi
特殊权限3:SBIT
21:05:51 root@jinnan,10.0.0.101:~
drwxrwxrwt. 18 root root 4096 Apr 12 17:18 /tmp
粘滞位权限作用特性
- chmod o+t 文件名
- chmod 1xxx 文件名
凌驾于root之上的权限
chattr
i:只能查看文件内容,无法编辑
a:只能查看和追加文件内容,无法修改或覆盖源文件内容
+:设置,增加该权限
-:取消该权限
lsattr 文件名
umask
0 ✓ 22:31:42 root@jinnan,10.0.0.101:~
0022
22:31:53 root@jinnan,10.0.0.101:~
0 ✓ 22:32:08 root@jinnan,10.0.0.101:~
0025
计算方法:
目录使用777 - umask
文件使用666 - umask
如果umask的位数上有奇数
文件使用666 - umask 在奇数位上加1
查看文件数字权限的方式
tr:按字符替换 sed:按整体替换 sed -i 's#SELINUX=enforcing#SELINUX=disabled#g'
/etc/sysconfig/selinux vim:按整体替换 :%s
Linux中的单引号和双引号含义:
bash:
有变量的情况下,有区别
双引号解析变量
单引号所见即所得
纯字符串的情况下,没有区别
awk:
有变量的情况下,有区别
单引号解析变量
双引号所见即所得 awk -F '指定分隔符' '{print $N}' awk -F '[分隔符1分隔符2]' '{print $N}'