成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一文看懂Linux訪問控制列表

譯文 精選
系統 Linux
本文介紹Linux訪問控制列表(ACL),它相比標準的Linux權限提供了更大的靈活性。我將討論為多個獨立用戶和多個用戶組查看和配置ACL。你選擇的Linux發行版很可能已經啟用了ACL(ACL實際上是文件系統的一項功能)。

譯者 | 布加迪

審校 | 重樓

本文介紹了Linux訪問控制列表(ACL),它相比標準的Linux權限提供了更大的靈活性。

經常在Linux與微軟Windows之間快速切換的一些人認識到兩者之間根本性的區別。其中一個區別是權限。標準的Linux權限非常簡單:指定一個用戶、一個用戶組,然后指定其他任何用戶或用戶組(稱為“others”),并根據需要授予讀取、寫入和執行等權限。Windows的權限則要復雜得多,有嵌套、更多的訪問級別和共享(Share)權限組合。然而從許多方面來看,Windows權限在大規模環境下更靈活、更實用。

本文介紹Linux訪問控制列表(ACL),它相比標準的Linux權限提供了更大的靈活性。我將討論為多個獨立用戶和多個用戶組查看和配置ACL。你選擇的Linux發行版很可能已經啟用了ACL(ACL實際上是文件系統的一項功能)。

簡要回顧標準的Linux權限

你可以使用chmod命令來配置標準的Linux權限。該命令可以設置以下三種訪問級別的任意組合:讀取、寫入和執行。你可以將這些訪問級別授予三種身份:

  • 用戶(所有者):擁有文件的一個用戶帳戶(默認情況下,這是文件創建者)。
  • 用戶組:在/etc/group文件中顯示的一組用戶。
  • 其他:不是用戶或指定組成員的任何人。

圖1:ls -l命令顯示標準權限、所有權和組關聯

對于用戶和用戶組較少的獨立系統而言,這種方法綽綽有余。然而,在共享系統、啟用了文件共享功能的系統或SSH遠程訪問頻繁的設備上,這種方法卻變得非常麻煩又笨拙。

這時候文件系統ACL功能就能派上用場。它允許你配置具有不同訪問級別的多個用戶及/或用戶組。

ACL如何提供幫助?

ACL允許你指定多個用戶帳戶,并為它們提供不同的訪問級別。這也意味著你不必將文件的所有權授予其中一個用戶。它為用戶組提供了同樣的靈活性。

ACL仍然可以識別讀取、寫入和執行這三個標準訪問級別,因此你不必重新學習已經了解的關于Linux權限的所有知識。實際上,ACL與標準權限協同工作,因此你仍將使用基本的用戶(u)、用戶組(g)和其他(o)等身份。你是在補充常規權限,而不是替換常規權限。

驗證你的發行版支持ACL

今天的現代Linux發行版通常默認情況下支持ACL。ACL是文件系統的一項功能。標準的文件系統是ext4、XFS和Btrfs。它們都支持ACL。

你可能不需要檢查自己的Linux發行版是否支持ACL,但是如果你想確認,可以使用以下命令:

tune2fs -l /dev/sda1 | grep -i "Default mount options"

預計輸出中會看到列出的acl。

圖2:tune2fs命令顯示文件系統設置,包括是否啟用了ACL

注意,如果針對資源配置了ACL,ls -l輸出將顯示+字符。在下面這個例子中,ACL被應用到file1.txt。

圖3:注意file1.txt的權限字符串末尾的+字符,表示應用了ACL

使用setfacl命令

ACL配置命令是setfacl。它依賴標準的Linux命令語法:

command -options argument

參數將是你應用訪問控制的那個文件或目錄。

setfacl命令有很多選項。以下列表含有一些最常見的選項:

  • -m:修改指定的ACL。
  • -x:從ACL中刪除條目。
  • -b:從ACL中刪除所有條目。
  • -d:為特定的目錄配置默認ACL。
  • -R:對所有目錄內容遞歸應用ACL。

然而,setfacl還依賴其他參數來定義新的訪問控制是否應用于用戶或用戶組。

u:<username>
g:<groupname>

如果結合起來,這些設置允許管理員實現極其可靠而實用的權限配置。

下面的命令示例簡要介紹了如何使用setfacl。后面會介紹更具體的示例。

如果為用戶django配置ACL,將讀?。╮)權限授予sample.txt資源,請輸入:

setfacl -m u:django:r sample.txt

針對用戶組engineering的類似示例,如下所示:

setfacl -m g:engineering:r sample.txt

一旦你配置了ACL設置,需要檢查它們以確保它們是正確的。這時候getfacl命令就有了用武之地。

使用getfacl命令

用于管理ACL的另一個相關命令是getfacl,它可以顯示當前的ACL設置。

基本語法是getfacl和你想要查看的那個文件或目錄名:

getfacl / dev-projects

然而與大多數Linux命令一樣,getfacl支持許多有用的選項來修改輸出。這些包括:

  • -c:只顯示ACL條目,并丟棄額外的頭信息。
  • -R:遞歸顯示目錄內容。
  • -t:以更可讀的表格格式顯示輸出。

在審計或配置訪問控制時,使用getfacl檢查ACL設置。

圖4:getfacl命令顯示標準設置和ACL設置

ACL用例

下面你將看到ACL的兩個用例,包括場景和相關命令。考慮一下在你的環境中類似的情況會如何發生。

場景1

我將從一個簡單的示例開始入手:sales組對于/sales目錄需要擁有rwx權限,marketing組應該只有r-x權限。其他人不需要訪問。(請記住,這些組需要執行權限才能cd到目錄中。)

先向銷售組授予標準的rwx權限:

chown –R : sales /sales
chmod – r 770 /sales

接下來,為marketing組設置ACL:

setfacl -m g:marketing:r-x /sales

使用getfacl /sales確認設置。

請記住,ACL與標準權限協同工作,因此不要忘記使用ls -l命令用于這兩個系統。除了顯示ACL條目外,getfacl命令還顯示標準權限。

場景2

想象另一種情況,你需要為不同的用戶和組授予不同的訪問級別。假設你有一個/dev-projects目錄,需要滿足以下要求:

  • 所有者:擁有全面訪問權限(rwx)的root。
  • 用戶組:擁有全面訪問權限(rwx)的developers。
  • 額外用戶:擁有只讀取訪問權限(r-x)的alex(代碼審閱者)。
  • 額外用戶:具有只讀取訪問權限(r-x)的silas(項目經理)。
  • 額外用戶組:擁有只讀取訪問權限(r-x)的contract-dev-team。

標準權限無法滿足這類需求,但ACL可以輕松滿足。

先設置標準權限:

chown -R root:developers /dev-projects
chmod - R 770 /dev-projects

接下來,為額外用戶和用戶組配置ACL條目:

setfacl -R u:alex:r-x /dev-projects
setfacl -R u:silas:r-x /dev/projects
setfacl -R g:contract-dev-team:r-x /dev/projects

通過使用getfacl和ls -l顯示設置來檢查結果。

結語

訪問控制列表(ACL)擴展了Linux權限的功能,允許對不同的用戶和用戶組授予不同的訪問級別。雖然這使故障排查起來變得更復雜了,但為了增強靈活性是值得的。

ACL功能是文件系統的一項功能。今天的現代文件系統支持ACL,可能已經啟用了它。確保創建一種根據訪問需求組織資源、從而有效地利用ACL的目錄基礎設施。一般來說,銷售團隊所需的一切資源都應該存在于一個父目錄中,營銷團隊所需的一切資源都存在于另一個父目錄中。

ACL在大型部署環境中變得尤為重要,比如支持訪問需求各異的許多用戶和資源的主要文件服務器?,F在仔細檢查你的大型部署環境,看看ACL是否有助于更有效地控制資源訪問。在排查看似神秘的訪問問題時,別忘了考慮ACL。

原文標題:A Guide to Linux Access Control Lists,作者:Damon M. Garn

責任編輯:姜華 來源: 51CTO
相關推薦

2019-07-01 09:22:15

Linux操作系統硬件

2020-03-31 14:40:24

HashMap源碼Java

2016-08-18 00:21:12

網絡爬蟲抓取網絡

2024-08-12 12:30:27

2020-06-30 08:27:56

Python開發工具

2025-01-20 09:15:00

iOS 18.3蘋果iOS 18

2021-08-02 06:56:19

TypeScript編程語言編譯器

2025-06-09 04:00:00

2021-08-01 08:05:39

Linux信號原理

2019-05-22 09:50:42

Python沙箱逃逸網絡攻擊

2025-03-25 09:06:11

2021-05-11 10:40:29

JUCAQSJava

2021-05-12 15:16:17

JUCAQSJava

2021-02-21 11:25:17

云計算IaaSPaaS

2022-04-26 13:41:16

區塊鏈比特幣數據庫

2023-04-10 11:35:31

評估模型業務流程

2019-02-13 15:38:09

存儲虛擬化云計算

2022-12-07 07:38:07

存儲管理HSM

2023-12-18 10:45:31

2024-12-30 07:30:00

PLC通訊協議
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 三极网站| 亚洲中午字幕 | 99久久免费观看 | 日本中文字幕视频 | 国产午夜精品一区二区 | 精品国产鲁一鲁一区二区张丽 | 久久久久久久久中文字幕 | 夜夜精品浪潮av一区二区三区 | 欧美精品一区二区三区在线播放 | 欧美激情 一区 | 99re国产精品 | 精品国产免费一区二区三区演员表 | 国产日产精品一区二区三区四区 | 久久久久久国产精品免费免费狐狸 | 成年人黄色免费视频 | 精品一区二区三区在线视频 | 视频一区二区中文字幕日韩 | 日韩一区二区三区在线播放 | 成年免费视频 | 亚洲精品成人 | 韩日一区二区 | 91xxx在线观看| 欧美精品1区2区 | 欧美a级成人淫片免费看 | 久久精品二区 | 成人字幕网zmw | 成人黄色电影在线播放 | 欧美二级 | 欧美国产日韩精品 | 国产又色又爽又黄又免费 | 免费看国产片在线观看 | 一级毛片视频在线 | 欧美日韩三级 | 亚洲精品一区二区 | 99免费| 日韩免费视频一区二区 | 噜久寡妇噜噜久久寡妇 | 亚洲自拍偷拍欧美 | 亚洲一区二区三区在线免费 | 欧洲精品在线观看 | 日本午夜免费福利视频 |