我讀過,為了防止使用者更改自己的密碼,必須輸入:
密碼 -n 10000 $用戶
但是如何防止 root 使用者也更改 $user 的密碼呢?
背景:我正在嘗試設定對某些目錄的獨佔存取權限,並認為新用戶是合適的。是嗎?我選擇不壓縮+密碼保護這些目錄,因為它們中的大多數都超過 1TB。有什麼提示嗎?
編輯:阻止來自 root 的此類操作的原因是,即使具有 root 存取權的使用者也不應該能夠存取我試圖保護的某些獨佔目錄。
答案1
這個問題的理由值得商榷…
為了批評您想要的創建新用戶的解決方案 - 即使其他 root 用戶無法更改新用戶的密碼,他們也不需要這樣做,因為 root 可以讀取任何文件或更改文件的文件權限 - 他們不需要永遠不需要“成為”那個用戶。
如果您有數 TB 的數據,想要阻止其他用戶存取 - 不要將這些數據放在這些用戶有權訪問的同一台電腦上。
如果您在具有多個使用者的電腦上擁有數 TB 的資料 - 為什麼您不讓那些使用者存取這些資料呢?
我們甚至還沒有討論為什麼有多個您不信任的根用戶。授予多個 root 用戶是一件好事,但是聽起來您對所有用戶都具有 root 訪問權限 - 朋友很棒,讓他們進入,但他們不需要 root。
即使使用 ACL,您也無法阻止其他 root 使用者取得資料 - 您(以 root)建立了 ACL,他們(作為 root)將修改它。
唯一真正可行的解決方案是各個間諜機構很久以前發明的。氣隙機器。
將您的「絕密」資料放在驅動器上,不要將其與您的朋友一起插入電腦。或者,將磁碟機安裝到另一台沒有 root 使用者群組且沒有網路存取權限的電腦上。您可能可以允許這台電腦(檔案伺服器)具有網路存取權限,因為您的朋友不太可能擁有 Spook Grade 駭客工具來存取這台電腦。只允許您自己訪問,瞧——隔離資料。這種機器的製造成本非常低。 CPU、網路卡就完成了。
如果您「有點想要」信任它們,和/或,並且僅從這台(根用戶密集的)計算機訪問此數據,則僅在單用戶模式下、離線且位於控制台時物理連接驅動器。
也許還有一些其他創意的解決方案,但是如果涉及軟體,則不可能將一個 root 使用者與另一個 root 使用者隔離。
ps:當提到 root 時,我使用該術語來暗示真正的 root 用戶 - 而不是具有 sudo 等的用戶。
答案2
最終,如果您授予某人對您系統的 root 存取權限,您就為他們提供了系統上的所有內容,這就是為什麼您信任您授予 root 權限的人很重要。
答案3
我想你可以在 /etc/shadow 上設定一個不可變的擴充檔案系統屬性。這將阻止對密碼的所有更改,直到根用戶撤銷不可變位元。命令是“chattr +i /etc/shadow”
如果您向專業系統管理員提供 root 存取權限,那麼您應該假設如果您要求他們不要更改密碼,他們也不會更改密碼。最後,您始終可以切換到使用 Kerberos 5 或集中管理的東西。