您好,登錄后才能下訂單哦!
Linux權(quán)限管理之特殊權(quán)限
??
? ACL(訪問(wèn)控制列表)
? 用來(lái)解決用戶對(duì)權(quán)限的身份不足的問(wèn)題
? 使用ACL必須要有文件系統(tǒng)的支持才行
? Linux平臺(tái)上,常見(jiàn)的支持ACL的文件系統(tǒng)有 ext2\ext3\ext4,JFS,XFS等
? 查看分區(qū)ACL權(quán)限是否開(kāi)啟
? dumpe2fs -h 設(shè)備名 | grep "Default mount options"? ?#查看設(shè)備的默認(rèn)掛載權(quán)限 (dumpe2fs 只支持ext2/3/4文件系統(tǒng))
? XFS文件系統(tǒng)的超級(jí)快信息使用xfs_growfs命令查看
? 臨時(shí)開(kāi)啟分區(qū)ACL權(quán)限
? ? mount -o remount,acl /? ?#重新掛載根分區(qū)并加入acl權(quán)限?
? 永久開(kāi)啟ACL權(quán)限,修改/etc/fstab
? 查看ACL權(quán)限
? getfacl 文件名
?
范例:
[root@VM_0_8_centos home]# getfacl av
# file: av? ? ? ? ? ? ? #文件名
# owner: tony #屬主
# group: stu? ? ? ? ? ? #屬組
user::rwx? ? ? ? ? ? ? ?#屬主的權(quán)限
user:lw:r-x? ? ? ? ? ? ?#lw用戶的權(quán)限
group::rwx ? ? #屬組的權(quán)限( effective:r-x? #屬組的真正權(quán)限)
group:tgroup2:rwx #tgroup2組的權(quán)限(effective:r-x #tgroup2組的真實(shí)權(quán)限)
mask::r-x
other::---
?
ACL最大有效權(quán)限mask
? mask是用來(lái)指定最大有效權(quán)限的。給某用戶賦予的ACL權(quán)限需要和mask權(quán)限"相與"才能得到用戶的真正權(quán)限
? ? ? ?配置mask方法:
? ? ? ? ? ? setfacl -m m:權(quán)限 文件名? #設(shè)定文件的mask權(quán)限
? 設(shè)定ACL權(quán)限
? setfacl [option] acl參數(shù) 文件名
? -m :設(shè)定ACL權(quán)限
? -x :刪除指定ACL權(quán)限
? -b :刪除所有ACL權(quán)限
? -d :設(shè)定默認(rèn)ACL權(quán)限
? -k :刪除默認(rèn)ACL權(quán)限
? -R :遞歸設(shè)定ACL權(quán)限
? ACL參數(shù)主要由三部分組成:
? 三種身份:對(duì)應(yīng)身份名:三種權(quán)限
? [u|g|o] : [用戶名|組名]:[rwx]
?
?
? 給用戶設(shè)定ACL權(quán)限:
? setfacl -m u:用戶名:相應(yīng)權(quán)限 文件名
? 給用戶組設(shè)定ACL權(quán)限:
? setfacl -m g:組名:相應(yīng)權(quán)限 文件名
? 范例:
? setfacl -m u:tom:rw- test.txt
? setfacl -m g:stu:rw- hello.txt
??
? ? 刪除ACL權(quán)限:
? ? setfacl -x u:用戶名 文件名? #刪除指定用戶ACL權(quán)限
? ? setfacl -x g:組名 文件名 #刪除指定用戶組ACL權(quán)限
? ? ? ? setfacl -b 文件名? ? ? ? #刪除文件的所有ACL權(quán)限
? ACL默認(rèn)權(quán)限與遞歸權(quán)限
? 遞歸ACL權(quán)限
? 遞歸是父目錄在設(shè)定ACL權(quán)限時(shí),所有的子文件和子目錄也會(huì)擁有相同的ACL權(quán)限,易導(dǎo)致權(quán)限溢出
設(shè)定ACL權(quán)限時(shí) 使用-R權(quán)限
遞歸權(quán)限僅能賦予目錄,不能賦予文件
遞歸權(quán)限設(shè)置時(shí),只會(huì)對(duì)目錄下已經(jīng)創(chuàng)建的文件和子目錄授予相同的ACL權(quán)限,此后新建的文件和子目錄
不會(huì)被授予相同的ACL權(quán)限
范例;
setfacl -m u:lw:rw -R /hello.txt
? ? 默認(rèn)ACL權(quán)限
? ? 默認(rèn)ACL權(quán)限的作用是如果給父目錄設(shè)定了默認(rèn)的ACL權(quán)限,那么父目錄中所有新建的子文件都會(huì)繼承父目錄的ACL權(quán)限
? ? setfacl -m d:u:用戶名:權(quán)限? 文件名
-----------------------------------------------------------------------------------------------------------------------
Linux sudo 權(quán)限
root把本來(lái)只能超級(jí)用戶執(zhí)行的命令賦予普通用戶執(zhí)行
sudo的操作對(duì)象是系統(tǒng)命令
給普通用戶賦予超級(jí)用戶的權(quán)限
visudo命令
visudo命令打開(kāi)的文件中給普通用戶/用戶組賦予權(quán)限的格式:
用戶名 被管理主機(jī)的地址=(可使用的身份) 授權(quán)的命令(必須是絕對(duì)路徑)
%組名? 被管理主機(jī)的地址=(可使用的身份) 授權(quán)的命令(必須是絕對(duì)路徑)
? ?普通用戶執(zhí)行root用戶賦予的命令:
? ? sudo 命令的絕對(duì)路徑
Linux 文件特殊權(quán)限 (特殊權(quán)限精量少修改)
SetUID
只有可以執(zhí)行的二進(jìn)制程序才能設(shè)定SUID權(quán)限
命令執(zhí)行者要對(duì)該程序擁有x(執(zhí)行)權(quán)限
命令執(zhí)行者在執(zhí)行該程序時(shí)獲得該程序文件屬主的身份(在執(zhí)行程序的過(guò)程中靈魂附體為文件的屬主)
SetUID權(quán)限只在該程序執(zhí)行過(guò)程中有效,也就是說(shuō)身份改變只在程序執(zhí)行過(guò)程中有效
設(shè)定SetUID的方法
4代表SUID
? ? ? chmod 4755 文件名
? ? ? chmod u+s? 文件名
? ? 取消SetUID的方法
? ? ? ? ? chmod 0755 文件名
? ? ? ? ? chmod u-s? 文件名
危險(xiǎn)的SetUID
關(guān)鍵目錄應(yīng)嚴(yán)格控制寫(xiě)權(quán)限。
用戶的密碼設(shè)置要嚴(yán)格遵守密碼三原則
對(duì)系統(tǒng)中默認(rèn)應(yīng)該具有SetUID權(quán)限的文件作一列表,定時(shí)檢查有沒(méi)有這之外的文件被設(shè)置了SetUID權(quán)限
SetGID
SetGID針對(duì)文件的作用
? ? 只有可以執(zhí)行的二進(jìn)制程序才能設(shè)定SGID權(quán)限
命令執(zhí)行者要對(duì)該程序擁有x(執(zhí)行)權(quán)限
命令執(zhí)行在執(zhí)行程序的時(shí)候,組身份升級(jí)為該程序文件的屬組
SetGID權(quán)限同樣只在該程序執(zhí)行過(guò)程中有效,也就是說(shuō)組身份改變只在程序執(zhí)行過(guò)程中有效。
SetGID針對(duì)目錄的作用
普通用戶必須對(duì)此目錄擁有r和x權(quán)限,才能進(jìn)入此目錄
普通用戶在此目錄中的有效組會(huì)變成此目錄的屬組
如普通用戶對(duì)此目錄擁有w權(quán)限時(shí),新建的文件的默認(rèn)屬組是這個(gè)目錄的屬組
設(shè)定SetGID
2代表SGID
chmod 2755 文件名
chmod g+s? 文件名
Sticky BIT權(quán)限(粘著位權(quán)限)
粘著位目前只對(duì)目錄有效
普通用戶對(duì)該目錄擁有w和x權(quán)限,既普通用戶可以在此目錄擁有寫(xiě)入權(quán)限
如果沒(méi)有粘著位,因?yàn)槠胀ㄓ脩魮碛衱權(quán)限,所以可以刪除此目錄下所有文件,包括其他用戶建立的文件
一擔(dān)賦予了粘著位,除了root可以刪除所有文件,普通用戶就算擁有w權(quán)限,也只能刪除自己建立的文件
但是不能刪除其他用戶建立的文件。
設(shè)置粘著位
chmod 1755 目錄名
chnod o+t? 目錄名
取消粘著位
chmod 0777 目錄名
chmod o-t? 目錄名
Linux 不可改變位權(quán)限(chattr權(quán)限)
chattr命令格式
chattr [+ - =] [option] 文件或目錄名
+:增加權(quán)限
-: 刪除權(quán)限
=: 等于某權(quán)限
選項(xiàng):
i:如果對(duì)文件設(shè)置i屬性,那么不允許對(duì)文件進(jìn)行刪除、改名、也不能添加修改數(shù)據(jù);如果對(duì)目錄設(shè)置i屬性,那么只能修改目錄下文件的數(shù)據(jù),但不允許建立和刪除文件
a:如果對(duì)文件設(shè)置a屬性,那么只能在文件中增加數(shù)據(jù),但是不能刪除也不能修改數(shù)據(jù);如果對(duì)目錄設(shè)置a屬性,那么只允許在目錄中建立和修改文件,但是不允許刪除。
查看文件系統(tǒng)屬性:
lsattr
? -a :顯示所有文件和目錄
? -d :如目標(biāo)是目錄,僅列出目錄本身的屬性,而不是子文件的
?
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。