限制學生帳戶權限,授予教師訪問權限
我在 Ubuntu 12.04 上設置了兩個使用者組,學生和教職員工,並創建了多個學生和教職員工帳戶。問題是學生目前可以查看和閱讀同學的所有文件:-/
我想阻止學生看到/閱讀彼此的目錄/文件,但允許教員組中的某人自由訪問學生組。
我不知道該怎麼做,有人可以提供有關如何實施此政策的指示嗎?我知道如何設置/更改組,但不知道如何將策略限制在他們可以做/看到的範圍內。(我成為 Linux 使用者已有一段時間了,但管理比我自己的帳戶更多的帳戶對我來說是新的)
另外,我是否必須更改
umask
所有學生帳戶的設置,以確保學生隨後創建的新文件/目錄不會繞過此政策?我會以 root 身份
chmod go-rx /home/*
在每個學生主目錄上執行以實現此目標,還是我會以錯誤的方式解決這個問題?更新:澄清一下,我的目標是將此作為預設設置,我不希望我可以阻止知情/好奇的學生更改他們自己的權限 - 我願意接受這一點。
我想我也會嘗試使用 ACL 來做到這一點。我能想到的唯一其他方法如下。
- 創建 2 個組
students
&faculty
- 每個使用者的主目錄。會是這樣的:
drwxrws---. 253 student1 faculty 32768 Nov 29 16:39 student1
這將允許
faculty
組中的任何人訪問student1
的目錄,但除了所有者之外,其他任何人都不能訪問student1
。 3. chown -R student1.faculty /home/student1 4. 查找 /home/student1 -type d -exec chmod ug+rwx,g+s,o-rwx {} +
mv
這種方法的問題在於,如果所有者要弄亂組所有權,或者要將文件放入此目錄,它可能會有點脆弱。只有新創建的文件/目錄才會保留所有權 + setgid 位。此設置要求 /home 下的所有預先存在的文件/目錄都需要使用上面的步驟 #3 和 #4 進行調整。
ACL
正如我上面所說,我認為我仍然會使用 ACL 來執行此操作。我會參考這篇關於 ACL 的教程,標題為:Using ACLs with Fedora Core 2 (Linux Kernel 2.6.5)。標題聽起來過時了,但命令仍然相關。