linux基础知识(一)
linux系统上的特殊权限
特殊权限位:SUID,SGID,STICKY
1.进程以某用户的身份运行,进程是发起此进程用户的代理,因此以此用户的身份和权限完成所有操作;
2.权限匹配模式
(1)判断进程的属主是否为被访问文件的属主;如是,则应该用属主权限,否则进入第二步;
(2)判断进程的属组,是否属于被访问的文件属组;如果,则应用属组的权限,否则进入第三步;
(3)应用other权限;
SUID:
默认情况下:用户发起的进程,进程的属主是其发起者,因此,其以发起者的身份运行;
SUID的功用:用户运行某程序时,如果此程序拥有SUID权限,那么此程序运行为进程时,进程的属主不是发起者,而程序文件自己的属主;
例:[root@centos-23 opt]# ll
----------. 1 root root 872 Sep 29 08:23 shadow --shadow文件u,g,o无任何权限,只有管理员身份可以忽略文件权限限制查看其内容
[root@centos-23 opt]# ll
-rwxr-xr-x. 1 root root 54080 Sep 29 08:26 cat --cat默认情况是以"权限匹配模式"运行,如果将SUID权限赋予s权限,cat就能以管理员的身份运行,忽略所有文件权限查看内容;
[root@centos-23 opt]# ll
-rwsr-xr-x. 1 root root 54080 Sep 29 08:26 cat --赋予cat文件以s权限
[test2@centos-23 opt]$ cat shadow
cat: shadow: Permission denied
[test2@centos-23 opt]$ ./cat shadow --已经可以用管理员的身份访问shadow文件
管理文件权限:chmod u+|-s file
展示位置:属主的执行权限位。如果属主有执行权限,显示为小写s,否则显示为大写S;
SGID:通常应用在目录上
例:在设置SGID之前
[test3@centos-23 1]$ ll
-rw-rw-r--. 1 test2 test2 0 Sep 29 09:10 a --登陆test2用户,创建文件后的属组test2
-rw-rw-r--. 1 test3 test3 0 Sep 29 09:10 b --登陆test3用户,创建文件后的属组test3
给文件目录“1”设置SGID之后
[root@centos-23 opt]# ll
drwxrwsr-x. 2 root demo 24 Sep 29 09:10 1
[test2@centos-23 1]$ ll
-rw-rw-r--. 1 test2 test2 0 Sep 29 09:10 a
-rw-rw-r--. 1 test3 test3 0 Sep 29 09:10 b
-rw-rw-r--. 1 test3 demo 0 Sep 29 09:11 c --登陆test2用户,创建文件后的属组为文件目录"1"的属组demo
-rw-rw-r--. 1 test2 demo 0 Sep 29 09:12 d --登陆test3用户,创建文件后的属组为文件目录"1"的属组demo
功用:目录属组有写权限,且有SGID权限时,那么所属于此目录的属组,且以属组身份在此目录中新建文件或目录时,新文件的属组不是用户的基本组,而是此目录的属组;
管理文件SGID权限:chmod g+|-s file
展示位置:属组的执行权限位,如果属主原本有执行权限,显示为小写s,否则,显示为大写S;
STICKY:
功用:对属组或全局可写的目录,组内所有用户或系统 上所有用户对此目录中都能创建新建文件或删除已有文件,如果为此类目录设置STICKY权限,则每个用户能创建新文件,且只能删除自己的文件;
[root@centos-23 opt]# chmod o+t 1/
[root@centos-23 opt]# ll
drwxrwsr-t. 2 root demo 42 Sep 29 09:12 1 --给目录“1”增加STICKY权限位。如果不增加增权限位,在目录“1”中可以任意创建和删除文件和目录
[test2@centos-23 1]$ ll
-rw-rw-r--. 1 test3 test3 0 Sep 29 09:10 b
-rw-rw-r--. 1 test3 demo 0 Sep 29 09:11 c
-rw-rw-r--. 1 test2 demo 0 Sep 29 09:12 d
[test2@centos-23 1]$ rm b
rm: remove write-protected regular empty file ‘b’? y --给目录“1”增加STICKY权限位后,在该目录内只能创建和修改文件或目录,不能删除
rm: cannot remove ‘b’: Operation not permitted
管理文件的STICKY权限:chmod 0+|-t file
展示位置:其它用户的执行权限位,如果属主原本有执行权限,显示为小写t,否则显示为大写T;
注:系统上的/tmp和/var/tmp目录默认均有STICKY权限位
管理特殊权限的另一方式:
浙公网安备 33010602011771号