禁止 root 對 /etc/passwd 中未列出的使用者進行 su

禁止 root 對 /etc/passwd 中未列出的使用者進行 su

在 Linux 上,我們根據 AD 對使用者進行身份驗證。 AD 使用者未在 /etc/passwd 中列出。

我們即將部署一個 NFS 解決方案,為每組使用者安裝一些額外的空間。

如果具有 sudo su 權限的使用者 (A) 轉到 root,那麼他只需通過 su user(B) 並轉到 NFS 即可模擬使用者 (B)。

如果使用者未在 /etc/passwd 中列出,有什麼方法可以禁止 root 使用者使用 su 嗎?

答案1

我覺得你應該重新思考你的問題。我不知道有什麼方法可以實現您想要的,但是...如果您有一個具有您不完全信任的 sudo ALL 權限的用戶,那麼您應該限制該權限。

答案2

如果您要授予使用者 A root 權限,那麼不行,您不能限制他們執行任何操作(無論您設定什麼阻止,root 始終可以繞過它們;除了極少數例外)。您應該將使用者 A 新增至 sudoers 並嚴格配置他們可以或不能運行哪些程式。

答案3

沒有回答您的直接問題,但我認為您的問題在於 NFS,而不是 sudo/su - 每當您使用 NFSv3 時,您都會遇到此問題,因為它依賴 UID 來強制執行存取權限。

即使您確實以某種方式阻止使用者切換到 root 並返回到另一個 UID,惡意使用者也可以簡單地連接自己的裝置或啟動不同的作業系統來取代您專門配置的系統並克服保護。

您考慮過使用 NFSv4 嗎?它使用 Kerberos 來驗證安裝請求並強制執行存取權限,因此不會容易受到這種情況的影響。

相關內容