通過使 UID=0 GID=0 來授予使用者 root 權限是否有任何問題?
我和一個朋友正在管理多個虛擬機,每個虛擬機都致力於整個系統中的某些任務。當我們需要管理它們時,我們通常以 root 身份登錄,因為我們登錄機器的唯一時間是我們需要在它們中執行管理任務時。我們通常不使用 sudo,因為我們執行的每個命令通常都是 sudo 命令。
我們希望在這些機器上保持我們的帳戶分開,給我們單獨的 .bash_history,查看另一個人上次登錄的時間等。為此,我們需要兩個具有完全 root 權限的帳戶。
一種方法是將我們的普通使用者帳戶更改為 UID=0 GID=0,即與 root 相同。問題是:是否存在多個使用者帳戶具有相同 UID 和 GID(特別是與 root 相同)的問題(即意外或不明顯的影響)?
PS 我在超級使用者那裡問過這個問題,但這只為我贏得了 Tumbleweed 徽章,所以我在這裡嘗試。
顯然,您能夠以“root”身份完成(大部分)任務,因為重要的是擁有正確的 id 和 gid;但是,將兩個新帳戶都作為 root 將不起作用,因為您希望區分您和您的朋友的操作/登錄。
系統或其他軟體經常會感到困惑,並會顯示一個使用者擁有另一個使用者的名稱、一個完全不同的使用者,甚至是根使用者名。(例如,對於您的目的,系統會稍微混淆,三個使用者具有相同的 id/gid);您甚至可能正在登錄,並想知道為什麼系統說您有另一個登錄名。
我建議您使用屬於 sudo 組的正常帳戶,並使用 sudo 進行一些紀律,避免濫用
sudo su
以正常 root 身份登錄;正如您所提到的,使用所有 root 命令作為 sudo 命令的好處是,忽略了輕微的不便,您已經根據正確的使用者進行了登錄。從安全的角度來看,root 使用者通常有幾種系統可能不會強加給具有相同 id 的其他使用者的限制。一個很好的例子可能是預設情況下不允許遠端 root 登錄的 sshd。還會有其他人。
說到點子上了。歷史上,Unix 中的許多東西都是在假設 root 的 id/gid 為 0 的情況下建構的。試圖以非正常的方式解決這個問題是在尋求一些驚喜。