告別 root:沒有人強迫、卻回報最高的決定
以 root 身分工作,不會在某天突然爆炸。它會悄悄破壞兩件事:記錄指向的是誰,以及錯誤的點擊會在哪裡停下。解決方法不是停用 root,而是把日常工作從它身上移開。
AtlasPVE ·
本條目涵蓋以下問題
- proxmox 非 root 使用者
- proxmox 停用 root 登入
- proxmox 建立管理員帳號
- proxmox 使用 root 有風險嗎
- proxmox 日常工作需要哪些權限
安裝完成時給的是 root,一切都能用它完成,也沒有人強迫建立另一個帳號。所以大多數的安裝環境,多年來都以 root 運作。這樣做的代價不會在某一天一次到來,而是悄悄累積在兩個地方。
第一個代價:記錄指向的是誰
系統會記錄做過的事,而每一筆記錄都有擁有者。如果每個人都以 root 登入,記錄中的名稱對每個人來說都一樣。記錄仍然能回答發生了什麼事,卻不再能回答是誰做的。在只有一個人的環境中,這沒有任何差別;但第二個人加入的那一天,記錄就不再能當作證據。
第二個代價:錯誤沒有底線
root 沒有做不到的操作,這也表示沒有任何一層能擋下錯誤的點擊。使用權限範圍符合自身工作的帳號時,範圍以外的錯誤從一開始就不可能發生。這與不信任無關,而是要站在有底線的地面上。
第三個代價:權限開始四處流動
沒有關閉的瀏覽器工作階段、交給指令碼的密碼、存在某處的連線:以 root 身分工作時,這些全都帶著完整的權限。權限不再只在人的身上,而是累積在這個人留下的各種痕跡裡。
該怎麼做
不要停用 root。它是救援的途徑,總有一天會真的需要它。該做的是把日常工作從它身上移開:為自己建立一個管理員帳號,給它足以完成每天實際工作的權限,然後為 root 設定強密碼與第二道驗證,再把它擱在一旁。
在大多數環境中,日常工作的內容都很相似:監看、啟動與停止機器、建立快照、進行備份、執行更新。變更儲存配置或調整叢集結構,一年只有寥寥幾天。那些時候 root 依然在。
轉換過程中的陷阱
換到新帳號後,某件事做不了,反射動作就是回到 root。那一刻真正該做的,是讀一下缺少的是哪一項權限,因為那份清單正是日常工作所需要的。一週之內清單就會穩定下來,從此再也不必回頭。
Atlas 的做法
Atlas 不自行建立角色系統:它會向 Proxmox 詢問登入的帳號被允許做什麼,再依此建構畫面。所以離開 root 在介面上不會有任何損失,只是讓權限範圍與實際情況一致。稽核記錄也會寫明發出請求的帳號,無論是已執行的請求還是被拒絕的請求。如果每個人都以 root 登入,這個欄位對每個人來說都一樣;改用各自獨立帳號的那一天起,同一份記錄就開始能回答問題了。
資料來源
Proxmox 官方文件。內容為英文,且在此主題上以官方文件為準。