Centos
CentOS 現有文件系統對象的預設 ACL
有沒有辦法讓現有文件系統對象繼承其父目錄的新設置的預設 ACL 設置?
我需要這樣做的原因是我有一個通過 SFTP 連接到我的伺服器的使用者。他們能夠更改 FTP 客戶端中的目錄並查看根文件夾和伺服器的其餘部分。除了他們自己的使用者目錄外,他們無權更改或編輯任何內容,但我想阻止他們甚至查看其他目錄的內容。
有沒有比 ACL 更好的方法來做到這一點?如果 ACL 是可行的方法,我假設根目錄上的預設 ACL 將是限制訪問的最佳方式。然後我可以有選擇地授予使用者查看某些目錄的權限。問題是預設 ACL 僅由新的文件系統對象繼承,而不是現有的。
-d(或–default)用於設置目錄的預設值,以便在其中創建的東西繼承權限。
例如
setfacl -d –set u::rwx,u:tippy:rwx,u:axel:rx,g::rx,g:lensmen:rx,o::- MYDIR
這是一個快速概述。http://www.vanemery.com/Linux/ACL/linux-acl.html#default
您必須在現有目錄上手動設置 ACL。不難做到:
find /path/to/ftp -type d -exec setfacl <acl spec> {} \;
正如 l1x 所提到的,您的目錄上需要一個訪問 ACL 和一個預設 ACL。