定義ACL控制策略 linux

2021-09-24 03:49:25 字數 3081 閱讀 2670

定義acl控制策略

 問題

建立賬戶:mike、john、kaka

建立檔案:/data/file1.txt

mike對檔案有讀寫許可權,john只有讀許可權。其他使用者沒有任何許可權

kaka具有與john相同許可權

建立lily使用者,lily對file1.txt具有讀執行許可權,其他使用者沒有任何許可權

 方案

並不是所有的分割槽都支援acl策略設定,後續會學習怎樣讓乙個分割槽支援acl。在安裝系統時劃分的分割槽預設是支援acl策略的,而如果該分割槽是在安裝系統之後建立的預設是不支援的。

acl策略應用的情況是,當所有者、所屬組、其他人三個歸屬關係,三種身份的許可權都不能滿足某個使用者或組的許可權設定。這個時候acl可以為這個使用者或組單獨設定許可權,使linux許可權劃分設定更加靈活。

 步驟

實現此案例需要按照如下步驟進行。

步驟一:建立賬戶:mike、john、kaka

命令操作如下所示:

[root@localhost ~]# useradd mike

[root@localhost ~]# useradd john

[root@localhost ~]# useradd kaka

步驟二:建立檔案:/data/file1.txt

命令操作如下所示:

[root@localhost ~]# touch /data/file1.txt

[root@localhost ~]# ls -l /data/file1.txt

-rw-r–r--. 1 root root 0 2月 27 15:38 /data/file1.txt

步驟三:mike對檔案有讀寫許可權,john只有讀許可權。其他使用者沒有任何許可權

分析: 此題涉及到三種不同的許可權,我們可以這樣來做,讓mike來做所有者,讓john屬於此檔案所屬組成員,當然其他人就好說了直接設定即可。

命令操作如下所示:

[root@localhost ~]# ls -l /data/file1.txt //檢視許可權及歸屬關係

-rw-r–r--. 1 root root 0 2月 27 15:38 /data/file1.txt

[root@localhost ~]# chown mike:john /data/file1.txt //更改所有者與所屬組

[root@localhost ~]# ls -l /data/file1.txt //檢視更改結果

-rw-r–r--. 1 mike john 0 2月 27 15:38 /data/file1.txt

[root@localhost ~]# chmod o= /data/file1.txt //設定許可權,其他人無許可權

[root@localhost ~]# ls -l /data/file1.txt //檢視呢設定結果

-rw-r-----. 1 mike john 0 2月 27 15:38 /data/file1.txt

[root@localhost ~]#

步驟四:kaka具有與john相同許可權

分析: 我們可以把kaka加入到john組裡面

命令操作如下所示:

[root@localhost ~]# id kaka //查詢kaka使用者資訊

uid=506(kaka) gid=507(kaka) 組=507(kaka)

[root@localhost ~]# gpasswd -a kaka john //將kaka使用者加入到john組

adding user kaka to group john

[root@localhost ~]# id kaka //查詢kaka使用者資訊

uid=506(kaka) gid=507(kaka) 組=507(kaka),506(john)

[root@localhost ~]#

步驟五:建立lily,lily對file1.txt具有讀執行許可權,其他使用者沒有任何許可權

分析: 這個時候就出現基本許可權及歸屬關係不能解決,首先所有者已確定是mike,所屬組許可權rw所以也不行,最後其他人上面題有要求無任何許可權。所以acl策略就派上用場了。

命令操作如下所示:

[root@localhost ~]# echo 123456 > /data/file1.txt //寫入測試文字

[root@localhost ~]# cat /data/file1.txt //管理員測試

123456

[root@localhost ~]# id lily //查詢是否存在lily使用者

id: lily:無此使用者

[root@localhost ~]# useradd lily //建立lily使用者

[root@localhost ~]# su – lily //切換使用者身份

[lily@localhost ~]$ cat /data/file1.txt //測試在沒有設定acl前lily能否檢視

cat: /data/file1.txt: 許可權不夠

[lily@localhost ~]$ exit //退到root使用者身份

logout

[root@localhost ~]# getfacl /data/file1.txt //檢視檔案acl策略

getfacl: removing leading 『/』 from absolute path names

user::rw-

group::r–

other::—

[root@localhost ~]# setfacl -m u:lily:r /data/file1.txt //設定acl策略

[root@localhost ~]# getfacl /data/file1.txt //檢視acl策略

getfacl: removing leading 『/』 from absolute path names

user::rw-

user:lily:r–

group::r–

mask::r–

other::—

[root@localhost ~]# su – lily //切換使用者

[lily@localhost ~]$ cat /data/file1.txt //測試是否具有r許可權

123456

關於linux訪問控制(ACL訪問控制)

由於linux系統的基本許可權控制是針對文件所有者或其他賬戶來進行控制的,無法對單獨賬戶控制,這是acl訪問控制許可權,使用acl我們可以針對單一賬戶設定文件的訪問許可權 描述 檢視文件的acl全新啊 用法 通過getfacl對檔案或目錄進行acl許可權檢視 用來對檔案進行訪問控制 用法 setfa...

Linux學習記錄 ACL許可權控制

設定acl許可權 setfacl 檢視acl許可權 getfacl acl許可權控制主要目的是提供傳統的owner,group,other的read,wirte,execute許可權之外的具體許可權設定,可以針對單一使用者或組來設定特定的許可權 比如 某一目錄許可權為 drwx 2 root roo...

檔案控制ACL

原創 lctt 譯者 vicyu 收藏 6 分享 8 使用擁有許可權控制的liunx,工作是一件輕鬆的任務。它可以定義任何user,group和other的許可權。無論是在桌面電腦或者不會有很多使用者的虛擬linux例項,或者當使用者不願意分享他們之間的檔案時,這樣的工作是很棒的。然而,如果你是在乙...