Linux 文件系统上的特殊权限
Linux 文件系统上的特殊权限 权限模型: u , g , o r , w , x 进程的安全上下文: 前提:进程有属主(进程以哪个用户的身份运行);文件有属主和属组 1 用户是否能够把某个可执行程序文件启动为进程,取决于用户对程序文件是否拥有执行权限 2 程序启动为进程后,此进程的属主为当前用户,也就是是进程的发起者,进程的属组,为发起者的基本组 3 进程拥有的访问权限,取决其属主的访问权限 a 进程的属主,与文件属主相同,则应用文件属主的权限 b 进程的属主,属于文件的属组,则应用文件属组的权限 c 否则应用其它权限 SUID : 1 suid 权限仅对二进制程序有效 2 执行者对于该程序需要具有 X 可执行权限 3 本权限仅在执行该程序过程中有效 4 执行者将具有该程序所有者的权限 任何一个可执行程序文件能不能启动为进程,取决于发起者对程序文件是否有执行权限 启动为进程之后,其属主不是发起者,而是程序文件自己的属主,这种机制即为 SUID 权限设定: chmod u+s FILE chmod u-s FILE 注意: s :属主原本有 x 执行权限 S :属主原本没有 x 执行权限 SGID : 默认情况下,用户创建文件时,其属组为此用户所属的基本组 ( 有效组 ) 一旦某目录被设定了 SGID 权限,则对此目录拥有写权限的用户在此目录中创建的文件所属组为目录的所属组