Linux

Linux +如何只讓特定使用者讀取文件

  • October 29, 2017

假設我們希望只有使用者 tutu 可以讀取文件

/home/grafh/file.txt 

為了啟用它需要做什麼配置?

  • 文件所有者必須保持為 root (並且只有使用者 tutu 可以讀取文件)

你有兩種可能,使用經典的 DAC(自由訪問控制,通常的rwx權限)使用文件 ACL(訪問控制列表)。

使用 DAC 權限

如果tutu沒有自己的組(檢查groups tutu輸出),您必須創建一個新組並使tutu成為該組的唯一成員。

root@host:~# addgroup tutu
root@host:~# usermod -G tutu tutu

然後更改文件權限以允許對tutu組的成員進行讀取訪問:

root@host:~# chgrp tutu /home/grafh/file.txt
root@host:~# chmod 640 /home/grafh/file.txt

該文件將仍然歸root所有,但可以被**tutu讀取(但不可寫入),而不是其他其他使用者。

使用 ACL 權限

ACL 是除了上面看到的 DAC 權限之外的附加權限。旨在解決使用歷史悠久的Unix DAC權限系統無法輕鬆解決的情況。

要允許tutu讀取文件:

root@host:~# setfacl -m u:tutu:r /home/grafh/file.txt 

引用自:https://unix.stackexchange.com/questions/401207