錦州市廣廈電腦維修|上門維修電腦|上門做系統(tǒng)|0416-3905144熱誠服務(wù),錦州廣廈維修電腦,公司IT外包服務(wù)
topFlag1 設(shè)為首頁
topFlag3 收藏本站
 
maojin003 首 頁 公司介紹 服務(wù)項(xiàng)目 服務(wù)報(bào)價(jià) 維修流程 IT外包服務(wù) 服務(wù)器維護(hù) 技術(shù)文章 常見故障
錦州市廣廈電腦維修|上門維修電腦|上門做系統(tǒng)|0416-3905144熱誠服務(wù)技術(shù)文章
linux權(quán)限控制之ACL

作者: 佚名  日期:2010-07-17 03:45:25   來源: 本站整理

ACL,就是Access Control List,一個(gè)文件/目錄的訪問控制列表,可以針對(duì)任意指定的用戶/組分配RWX權(quán)限

用戶權(quán)限管理始終是 Unix 系統(tǒng)管理中最重要的環(huán)節(jié)。大家對(duì) Linux/Unix 的 UGO 權(quán)限管理方式一定不陌生,還有最常用的 chmod 命令。為了實(shí)現(xiàn)一些比較復(fù)雜的權(quán)限管理,往往不得不創(chuàng)建很多的組,并加以詳細(xì)的記錄和區(qū)分(很多時(shí)候就是管理員的噩夢(mèng))。可以針對(duì)某一個(gè)用戶對(duì)某一文件指定一個(gè)權(quán)限,恐怕管理員都期待的功能。比如對(duì)某一個(gè)特定的文件,用戶A可以讀取,用戶B所在的組可以修改,惟獨(dú)用戶B不可以……。于是就有了IEEE POSIX 1003.1e這個(gè)ACL的標(biāo)準(zhǔn)。所謂ACL,就是Access Control List,一個(gè)文件/目錄的訪問控制列表,可以針對(duì)任意指定的用戶/組分配RWX權(quán)限。現(xiàn)在主流的商業(yè)Unix系統(tǒng)都支持ACL。FreeBSD也提供了對(duì)ACL的支持。Linux在這個(gè)方面也不會(huì)落后,從2.6版內(nèi)核開始支持ACL。

準(zhǔn)備工作:

支持ACL需要內(nèi)核和文件系統(tǒng)的支持。現(xiàn)在2.6內(nèi)核配合EXT2/EXT3, JFS, XFS, ReiserFS等文件系統(tǒng)都是可以支持ACL的。用自己工作用的物理分區(qū)體驗(yàn)ACL,總是不明智的行為。萬一誤操作導(dǎo)致分區(qū)的損壞,造成數(shù)據(jù)的丟失,損失就大了。作一個(gè)loop設(shè)備是個(gè)安全的替代方法。這樣不需要一個(gè)單獨(dú)的分區(qū),也不需要很大的硬盤空間,大約有個(gè)幾百KB就足夠進(jìn)行我們的體驗(yàn)了。OK,下面我使用Fedora Core 5和Ext3文件開始對(duì)Linux的ACL的體驗(yàn)。

首先創(chuàng)建一個(gè)512KB的空白文件:

#dd if=/dev/zero of=/opt/testptn bs=1k count=512

和一個(gè)loop設(shè)備聯(lián)系在一起:

#losetup /dev/loop1 /opt/testptn

創(chuàng)建一個(gè)ext3文件系統(tǒng)

#mkfs.ext3 /dev/loop1

掛載此文件系統(tǒng),在掛載時(shí)需要告知內(nèi)核在此設(shè)備中使用acl

#mount -o rw,acl /dev/loop1 /mnt

現(xiàn)在我已經(jīng)得到了一個(gè)小型的文件系統(tǒng)。而且是支持ACL的。并且即使徹底損壞也不會(huì)影響硬盤上其他有價(jià)值的數(shù)據(jù)。可以開始我們的ACL體驗(yàn)之旅了。

首先新建一個(gè)文件作為實(shí)施ACL的對(duì)象:

#touch file1

#ll file1

然后看一下這個(gè)文件缺省的ACL ,這時(shí)這個(gè)文件除了通常的UGO權(quán)限外,并沒有ACL

#getfacl file1
#file:file1
#owner:root
#group:root
user::rw-
group::r--
other::r--

注意:即使是不支持ACL的情況下,getfacl仍然返回一個(gè)這樣的結(jié)果,不過setfacl是不能工作的。

下面添加幾個(gè)用戶和用戶組,一會(huì)我將使用ACL賦予他們不同的權(quán)限:

#useradd ceshi1
#useradd ceshi2
#useradd ceshi3
#groupadd ceshi
#usermod -G ceshi ceshi1 ceshi2 ceshi3

在目前情況下,新建的用戶沒有權(quán)限在file1中操作

現(xiàn)在我們對(duì)file1的ACL賦予ceshi1足夠的權(quán)限

#setfacl -m u:ceshi1:rw file1
#su - ceshi1
#echo "ceshi1" >>file1
#cat file1

顯示修改成功,用戶ceshi1可以對(duì)file1做讀寫操作,我們來看一下file1的ACL

#getfacl file1
#file:file1
#owner:root
#group:root
user::rw-
user:ceshi1:rw-
group::r--
mask::rw-
other::r--

ll file1
-rw-rw-r--+ root root

權(quán)限后面有個(gè)‘+’這個(gè)說明file1設(shè)置了ACL,接下來我們修改一下ceshi1的權(quán)限,同時(shí)給ceshi這個(gè)組讀的權(quán)限

#setfacl -m u:ceshi1:rwx,g:ceshi:r file1
#getfacl file1
#file:file1
#owner:root
#group:root
user::rw-
user:ceshi1:rwx
group::rw-
group:ceshi:r--
mask::rwx
other::r--

可以看到設(shè)置后的權(quán)限,ceshi1已經(jīng)有了執(zhí)行的權(quán)限,而ceshi這個(gè)組也獲得了讀取文件內(nèi)容的權(quán)限。也許有人已經(jīng)注意到了兩個(gè)問題:首先, file1的組權(quán)限從r--變成了rw-。其次,mask是什么?為什么也變化了呢?我們先從mask說起。如果說acl的優(yōu)先級(jí)高于UGO,那么 mask就是一個(gè)名副其實(shí)的最后一道防線。它決定了一個(gè)用戶/組能夠得到的最大的權(quán)限。這樣我們?cè)诓黄茐囊延蠥CL的定義的基礎(chǔ)上,可以臨時(shí)提高或是降低安全級(jí)別:

#setfacl -m mask::r file1
#getfacl file1
#file:file1
#owner:root
#group:root
user::rw-
user:ceshi1:rwx    #effective:r--
group::r--
group:ceshi:r--
mask::r--
other::r--

在ceshi1對(duì)應(yīng)的ACL項(xiàng)的后邊出現(xiàn)了effective的字樣,這是實(shí)際ceshi1得到的權(quán)限。Mask只對(duì)其他用戶和組的權(quán)限有影響,對(duì)owner和other的權(quán)限是沒有任何影響的。執(zhí)行l(wèi)s的結(jié)果也顯示UGO的設(shè)置也有了對(duì)應(yīng)的變化。因?yàn)樵谑褂昧薃CL的情況下,group的權(quán)限顯示的就是當(dāng)前的mask。通常我們把mask設(shè)置成rwx,以不阻止任何的單個(gè)ACL項(xiàng)。

*需要注意的是,每次修改或添加某個(gè)用戶或組的ACL項(xiàng)的時(shí)候,mask都會(huì)隨之修改以使最新的修改能夠真正生效。所以如果需要一個(gè)比較嚴(yán)格的mask的話,可能需要每次都重新設(shè)置一下mask。

體驗(yàn)2 - ACL的其他功能:刪除和覆蓋

如何刪除已有的ACL項(xiàng)?

#setfacl -x g:ceshi file1
#getfacl file1
#file:file1
#owner:root
#group:root
user::rw-
user:ceshi1:rwx
group::r--
mask::rwx
other::r--

刪除了ceshi組的權(quán)限 ,如果需要去除所有ACL權(quán)限,也可以使用-b選項(xiàng),所有的ACL都會(huì)被刪除

#setfacl -d file1
#getfacl file1
#file:file1
#owner:root
#group:root
user::rw-
group::r--
other::r--

我們可以用--set設(shè)置一些新的ACL項(xiàng),并把原有的ACL項(xiàng)全部覆蓋掉,和-m不同,-m選項(xiàng)只是修改已有的配置或是新增加一些,--set選項(xiàng)會(huì)把原有的ACL項(xiàng)都刪除,用新的替代,需要注意的是一定要包含UGO的設(shè)置,不能象-m一樣只是添加ACL就可以了。如:

#setfacl --set u::rw,u:ceshi1:rw,g::r,o::- file1
#getfacl file1
#file:file1
#owner:root
#group:root
user::rw-
user:ceshi1:rw-
group::r--
mask::rw-
other::---

o::-的完整寫法是other::---,通常我們可以把“-”省掉,但是當(dāng)權(quán)限位只包含一個(gè)“-”必須至少保留一個(gè)

如果希望對(duì)目錄下的所有子目錄都設(shè)置同樣的ACL,可以使用-R參數(shù):

#setfacl --set -R u::rw,u:ceshi1:rw,g::r,o::- dir1    ??


如果希望從一個(gè)文件讀入ACL,并修改當(dāng)前的文件的ACL,可以用-M參數(shù):

#cat test.acl
user:testu1:rw-
user:testu2:rw-
group:testg1:r--
group:testg2:r--
mask::rw-
other::---

如果我們希望在一個(gè)目錄中新建的文件和目錄都是用一個(gè)預(yù)定的ACL,那么我們可以使用默認(rèn)(default)ACL。在對(duì)一個(gè)目錄設(shè)置了默認(rèn)的ACL以后,每個(gè)在目錄中創(chuàng)建的文件會(huì)自動(dòng)繼承目錄的默認(rèn)ACL作為自己的ACL。用setfacl的-d選項(xiàng)可以做到這一點(diǎn):

#setfacl -d --set g:ceshi:rwx dir1
#getfacl dir1
# file: dir1
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x
default:group:testg1:rwx
default:mask::rwx
default:other::r-x

默認(rèn)ACL已經(jīng)被設(shè)置,建立一個(gè)文件試試:

#touch dir1/file1
#getfacl /dir1/file1
#owner:root
#group:root
user::rw-
group::r-x                      #effective:r--
group:ceshi:rwx                #effective:rw-
mask::rw-
other::r--

file1自動(dòng)繼承了dir1對(duì)testg1設(shè)置的ACL。只是由于mask的存在使得testg1只能獲得rw-權(quán)限

體驗(yàn)4 - 備份和恢復(fù)ACL
 



熱門文章
  • 機(jī)械革命S1 PRO-02 開機(jī)不顯示 黑...
  • 聯(lián)想ThinkPad NM-C641上電掉電點(diǎn)不...
  • 三星一體激光打印機(jī)SCX-4521F維修...
  • 通過串口命令查看EMMC擦寫次數(shù)和判...
  • IIS 8 開啟 GZIP壓縮來減少網(wǎng)絡(luò)請(qǐng)求...
  • 索尼kd-49x7500e背光一半暗且閃爍 ...
  • 樓宇對(duì)講門禁讀卡異常維修,讀卡芯...
  • 新款海信電視機(jī)始終停留在開機(jī)界面...
  • 常見打印機(jī)清零步驟
  • 安裝驅(qū)動(dòng)時(shí)提示不包含數(shù)字簽名的解...
  • 共享打印機(jī)需要密碼的解決方法
  • 圖解Windows 7系統(tǒng)快速共享打印機(jī)的...
  • 錦州廣廈電腦上門維修

    報(bào)修電話:13840665804  QQ:174984393 (聯(lián)系人:毛先生)   
    E-Mail:174984393@qq.com
    維修中心地址:錦州廣廈電腦城
    ICP備案/許可證號(hào):遼ICP備2023002984號(hào)-1
    上門服務(wù)區(qū)域: 遼寧錦州市區(qū)
    主要業(yè)務(wù): 修電腦,電腦修理,電腦維護(hù),上門維修電腦,黑屏藍(lán)屏死機(jī)故障排除,無線上網(wǎng)設(shè)置,IT服務(wù)外包,局域網(wǎng)組建,ADSL共享上網(wǎng),路由器設(shè)置,數(shù)據(jù)恢復(fù),密碼破解,光盤刻錄制作等服務(wù)

    技術(shù)支持:微軟等
    主站蜘蛛池模板: 亚洲乱码无码永久不卡在线| 亚洲 另类 无码 在线| 亚洲综合无码精品一区二区三区| 日韩精品无码人妻一区二区三区| 亚洲av中文无码乱人伦在线观看| 久久精品无码专区免费| 在线观看无码AV网址| yy111111电影院少妇影院无码| 无码精品一区二区三区在线| 无码AV一区二区三区无码| 十八禁无码免费网站| 亚洲人成影院在线无码观看 | 日韩专区无码人妻| 日韩欧精品无码视频无删节| mm1313亚洲精品无码又大又粗| 久久水蜜桃亚洲av无码精品麻豆 | 无码一区18禁3D| 日韩精品无码专区免费播放| 国产精品一级毛片无码视频| 国产乱人伦中文无无码视频试看| 国产精品久久久久无码av| 久久亚洲精品AB无码播放| 亚洲男人第一无码aⅴ网站| 国语成本人片免费av无码| 无码精品尤物一区二区三区| 亚洲国产精品无码av| 中文字幕乱妇无码AV在线| 中文无码精品一区二区三区| 免费无码午夜福利片69| 亚洲AV无码专区在线厂| 国产久热精品无码激情| 精品无码久久久久久国产| 精品久久久久久无码中文字幕一区| 2019亚洲午夜无码天堂| 久久亚洲AV成人无码国产| 免费A级毛片无码A∨| 久久久无码人妻精品无码| 无码不卡av东京热毛片| 日韩av无码成人无码免费| 精品无码国产一区二区三区51安| 无码综合天天久久综合网|