Security
完全分離兩個帳戶而不安裝單獨的作業系統?
我們班終於在我們的機器上安裝了 Mint Linux。問題是我們的老師害怕我們會與使用電腦的兩個班級進行戰爭遊戲。他的解決方案是安裝兩個獨立的作業系統;由於這個事實,我們需要 sudo 能力,但他不希望我們能夠為他人破壞作業系統(通過玩戰爭遊戲或犯錯誤)。他的解決方案是安裝兩個獨立的作業系統,但我不喜歡這個想法有幾個原因。首先,我們有 MBR,這樣就限制了分區的數量;其次,這很煩人,因為它們都是 Mint Linux,所以我們會在很多時候選擇錯誤的。任何人都知道一種分離兩個作業系統的方法,這樣一個人就不能為另一個人搞砸了?我不太擔心我們 我會玩戰爭遊戲,因為我們可以使用單獨的分區來做到這一點,而且它不那麼重要。有人有想法麼?
我正在考慮限制使用者擁有的權力,同時仍然允許他們使用 root;但是,這可能會在以後引起問題。老師當然要控制root賬號。
有兩個明顯的答案:
- 為每個使用者提供自己的虛擬機映像。在虛擬機內部,使用者有root權限;在虛擬機之外,根本沒有。如果您的硬體支持它,
kvm
則可以很好地解決此問題。並且虛擬機映像只是文件,因此它們很容易複製等。您可以使用寫時複製儲存,這將節省一些磁碟空間,如果這是一個問題。- 使用 Linux 3.8 中新奇的命名空間支持,這實際上允許機器上的每個人都在自己的區域中擁有根。尤其取決於您需要root做什麼。(雖然,您實際上可以在命名空間內執行整個單獨的發行版,它只需要共享同一個核心)。
與單獨的分區不同( root很容易搞砸——只需掛載它),以上兩個實際上是安全的(嗯,你可以物理訪問機器,所以這些漏洞無論如何都適用)。
還有更痛苦的事情,比如功能和 SELinux,這取決於您需要 root (sudo) 訪問權限的原因。或者,當然,如果您只需要一兩個命令,sudo 內置支持限制可以執行的命令。
**編輯:**有關命名空間的更多資訊,請參閱執行中的命名空間,第 1 部分:命名空間概述,共有六個部分。從幾年前開始,命名空間一直在緩慢地進入 Linux。第 5 部分和第 6 部分涵蓋了在 3.8 中添加的最後一部分,它允許任何隨機使用者在他自己的命名空間中擁有 root。