Linux系統上的特殊權限
特殊權限:SUID, SGID, STICKY
安全上下文:
1、進程以某用戶的身份運行,進程是發起此進程用戶的代理,因此用戶的身份和權限完成所有操作;
2、 權限匹配模型:
(1)判斷進程屬主,是否為被訪問的文件屬主;如果是,則應用屬主的權限;否則進入第2步;
(2)判斷進程的屬主,是否屬于 被訪問的文件屬組;如果是則應用屬組的權限,否則進入第三步;
(3)應用other的權限;
SUID:
默認情況下:用戶發起的進程,進程的屬主是其發起者;因此,其以發起者身份在運行;|
SUID的功用:用戶運行某程序時,如果此程序擁有SUID權限,那些程序運行為進程是,其屬主不是發起者,而是程序文件自己的屬主;
管理文件的SUID權限:
chmod u+ | -s FILE…..
展示位置:屬主的執行權限位
如果屬主原本有執行權限,顯示為小寫s、
否則,顯示為大寫S;
SGID:
功用:當目錄屬組有寫權限,且有SGID權限是,那么所有屬于此目錄的屬組,且以屬組身份在此目錄中新建成文件或目錄是看,新文件的屬組不是用戶的基本組,而是此目錄的屬組;
管理文件的SGID權限:
chmod g+ | -s FILE…
當前位置:屬組的執行權限位
如果屬組原本有執行權限,顯示為小寫s,
否則,顯示為大寫s;
Sticky :
功用:對于屬組或全局可寫的目錄,組內的所有用戶或系統上的所有用戶對此目錄都能創建或刪除已有文件;如果為此類目錄設置sticky權限,則每個用戶能創建新文件,且只能刪除自己的文件;
管理文件的Sticky權限:
chmod o +| -t FILE…
展示位置:其它用戶的執行權限位
如果其他用戶原本有執行權限,顯示為小寫t、
否則,顯示為大寫T;
系統上的/tmp/和/var/tmp目錄默認均有sticky權限;
管理特殊權限的另一方式;
suid sgid sticky
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7
chmod 1777
z基于八進制方式賦權是,可于默認的三位八進制屬組左側在加上一位八進制數字;
例如:chomd 1777
facl: file access control lists
文件的額外賦權機制:
在原來的u.g.o之外,另一層讓普通用戶能控制賦權給另外的用戶
getfacl命令:
getfacl FILE…
user:USERNAME: MODE
group: GROUPANME:MODE
setfacl命令:
賦權給用戶:
setfacl -m u:USERNAME: MOOE FILE…
賦權給組:
setfacl -m g:GROUPNAME:MODE FILE…
撤銷賦權:
setfacl -x u: USERNAME FILE…
setfacl -x g:GROUPNAME FILE…
原創文章,作者:shadow,如若轉載,請注明出處:http://www.www58058.com/58411