歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 利用ACL提高Linux系統文件控制力度

利用ACL提高Linux系統文件控制力度

日期:2017/2/28 16:48:25   编辑:Linux教程

  筆者企業前不久為了一個新產品項目,抽調銷售、質量、采購等部門人員成立了一個臨時項目小組,專門進行一類產品的開發。為了配合他們的工作,筆者在Linux文件服務器上建立了一個文件夾NewProject。公司規定,只有這個項目組的人員可以更改這個文件夾中的內容。而其他用戶則無法修改這個文件夾以及文件夾下任何文件的權利。這個需求實現起來有一定的難度。因為他們需要不同部門的員工組成一個新的小組,然後這個小組的成員對這個文件夾具有修改的權限。為了實現這個目標,筆者采用了Linux系統中的ACL(文件存儲控制清單)來實現這個需求。

  一、ACL的用途。

  通常情況下,Linux系統中文件與目錄都包含有關於文件所有者、文件相關的組以及系統上所有其他用戶的權限設定。也就是說,可以通過用戶、組等方式來對文件進行權限的設置。但是,卻無法針對多個不同組的用戶或者多個組設置不同的權限。說得白一點,就是同一個組中的用戶具有相同的權限,而不能夠同一個組中的用戶有某些例外。如在文件服務器上分別有銷售部門組、采購部門組等等。銷售部門組中的所有用戶具有相同的權限。也就是說,要麼銷售部門的員工全部可以訪問文件服務器上的NewProject這個文件夾;要麼全部不能夠訪問。而不能是某個銷售員可以訪問,而其他銷售員則不能夠訪問。若光靠Linux系統默認的文件訪問權限控制規則,是無法實現這個目的的。

  若企業現在要實現跨部門的合作,幾個部門中的某些員工需要對某些文件服務器上的文件或者文件夾有讀寫的權限,此時就要利用到Linux操作系統中的ACL(文件訪問控制清單)功能。也就是說,只有通過這個功能才能夠讓同一個組中的個別成員有有別於其他成員的文件訪問權限。

  二、具體配置。

  廢話少說,接下去大家就看看筆者的配置過程,來直觀的了解一下ACL文件存取控制清單的作用。如果大家要了解這個ACL文件存取控制清單的具體作用,可以先查看一下系統對於這個功能的大致介紹。要查看這方面的內容,可以在Linux系統的終端輸入man acl來實現這個目的。示意圖如下:

  第一步:創建文件夾並賦予相關的權限。

  筆者首先在文件服務器上創建了一個存放新項目信息的NewProject文件夾。由於筆者文件服務器是部署在一個獨立的Linux服務器上,所以硬盤基本上是文件服務器獨享的。故在建立文件夾的時候,沒有為用戶設置磁盤限額。如果大家文件服務器跟郵件服務器等其他應用服務器共用一台服務器或者一塊硬盤的時候,最好要養成為新文件夾設置磁盤限額的習慣。防止硬盤因為新項目存放文件的需要而被迅速耗用光,從而給其他應用服務產生不利的影響。具體磁盤配額如何設置,大家可以參考相關的問題。

  另外,還需要給這個目錄設置特殊的權限,筆者這裡給這個文件夾的權限為1777。這個數字表示所有用戶都可以在這個目錄中創建文件,但是只有文件的所有者才能夠刪除文件。這個權限就保證項目組的所有成員都可以在這個NewProject文件夾下保存圖片、新建文件等等。而且只有自己可以刪除自己建立的文件。不過光這個限制還不行,因為其他員工也可以往這個文件夾中存放內容。為此還需要通過ACL來限制其他用戶的權利。另外,除了文件所有者之外,其他人(包括這個項目小組中的其他成員)只能夠查看這個文件,但是無法進行修改。所以還需要設置項目小組中的其他成員可以修改這個文件夾下的文件。

Copyright © Linux教程網 All Rights Reserved