簡介Ubuntu rootX系統安全帳號
在向大家詳細介紹root之前,首先讓大家了解下Ubuntu root,然后全面介紹Ubuntu root,希望對大家有用。Ubuntu 對于桌面和服務器都是合適的。當前 Ubuntu 發布版支持 Intel x86 (IBM-compatible PC),
AMD64 (Hammer) and PowerPC (Apple iBook and Powerbook, G4 and G5) 架構。在 Ubuntu, 傳統 UNIX ’Ubuntu root’ 被屏蔽了 (也就是 你不能使用 Ubuntu root 來登錄). 這樣選擇的原因在本文的后面做出描述.
快速回答
使用 Ubuntu root 權限執行命令, 在每個命令前面加上 ’sudo’ 命令, 例如 sudo chown bob *你將會提示輸入你的口令, 口令將保存 15 分鐘. 過了這個時間, 你將需要重新輸入你的口令
在使用 Ubuntu 時,推薦使用 sudo.
啟動一個 Ubuntu root shell (例如 一個你能運行 Ubuntu root 命令的窗口) 使用: sudo -s
警告: sudo -s 不會改動環境變量 ($HOME, $PATH 等). 他有一些不好的副作用. 你能用 sudo -i 初始化整個 Ubuntu root 環境.
為了啟用 Ubuntu root 帳號 (也就是 設置一個口令) 使用: sudo passwd Ubuntu root
當你使用完畢后屏蔽 Ubuntu root 帳號 使用: sudo passwd -l Ubuntu root
這個將鎖住 Ubuntu root 帳號.
給圖像界面的應用程式 Ubuntu root 權限,使用以下兩者中的所有一個: gksudo [application] 或: kdesu [application]
Ubuntu 中的 kdesu 已修改成使用 sudo.
使用 sudo 和 gksudo/kdesu 相反, 有可能產生文件的所有權問題 .這種模式的好處缺省禁止 Ubuntu root 的好處包括了以下內容.起初 Ubuntu 團隊希望安裝盡可能的簡單. 不使用 Ubuntu root , 在安裝期間的兩個用戶交互步驟能省略. (科林?沃森)
更進一步, 如果在安裝中使用 Ubuntu root, 用戶將被需求永遠記住他們選擇的密碼--即使他們非常少使用到他. Ubuntu root 密碼經常被對 Unix 安全模型不熟悉的用戶忘記. (馬特?齊默曼)
他防止了缺省登錄時 "我能做所有事情" --在較大的變化發生之前,你將被提示輸入口令,這能使你考慮你這樣做的結果. 如果你作為 Ubuntu root 登錄, 你能刪除一些 "沒用的目錄" 并且不會意識到你正處于錯誤的目錄,那時已太晚了. 他是在 Unix 下長時間使用 "su-command-^D" 練習的情況下,代替一直呆在 Ubuntu root shell--除非你做嚴重的系統維護 (那時你仍然能使用 "sudo su"). (吉姆?奇塔姆 和 安德魯?索巴拉)
Sudo 增加了運行命令的日志記錄 (在 /var/log/auth.log). 如果你陷入困境, 你總是能返回并看見那些運行的命令. (安德魯?Zbikowski)
安全
和傳統的 superuser 模型相比,這種方法有不同的利弊,兩者都不總是顯示優良的.在鼓勵使用 Ubuntu root 權限執行一個獨立的命令, sudo 好過打開一個 shell:
減少使用 Ubuntu root 權限的時間總耗用, 降低了不注意使用 Ubuntu root 執行命令的風險
提供了有用的審核痕跡
有一個獨立的 Ubuntu root 密碼 (傳統模型) 提供了一層額外的保護,當如果一個管理員的密碼被侵害時。
無論怎樣, 如果管理員 (使用 sudo 或 su 變成 Ubuntu root) 被侵害, 攻擊者一般能通過一次間接的攻擊來獲得 Ubuntu root
使用 "sudo" 模式可能的問題
盡管桌面使用 sudo 的是有利的,不過還是有些可能的問題需要注意.
一些來自 universe 的包將有力的破除 (例如 webmin) 或讓使用變得危險. 一個好的變通方法是在處理受影響的包之前激活 Ubuntu root 帳號 (sudo su-; passwd ) 并在后面鎖住 (su -; passwd -l).
運行使用 sudo 的命令重定向輸出可能引發新用戶問題 (考慮 "sudo ls > /Ubuntu root/somefile"). 變通方法是使用 "sudo sh -c ’ls > /Ubuntu root/somefile’" (但這種替換變得非常丑陋), 使用 Adverbio, 或簡單的使用 sudo -s 獲得 Ubuntu root shell ,在那里執行。
MattZimmerman: 對于大多數的簡單解決方法是使用 dd(1): ls | sudo dd of=/Ubuntu root/somefile
在許多辦公室環境系統上唯一的用戶就是 Ubuntu root. 全部其他用戶使用 NSS 技巧例如 nss-ldap 導入. 安裝一個工作站www.britepic.org, 或修復他, 在這個案例網絡失敗,導致 nss-ldap 被斷開, Ubuntu root 被需求使用. 這中傾向于留下系統無法使用,除非被破解.
JerryHaltom: 也許在那些案例必需建立一個本地帳號: "admin" 擁有 sudo 到 Ubuntu root 權限.
LucasVignoliReis: 我認為這是個好的主意, 一個 sudoer 系統管理員帳號, 和一個普通帳號給其他的用戶.
誤解
sudo 沒有 su 安全?
基本的安全模型都是相同的, 因此這兩個系統有著一致的主要弱點. 所有使用 su 或 sudo 必需是個特權用戶.如果攻擊者損害了那個用戶的帳號, 下次用戶這樣做時,攻擊者同樣能獲得 Ubuntu root 特權. 用戶在這條鏈上是個弱的連接, 因此必須作為 Ubuntu root 用戶小心保護. 在更深的層次, sudo 提供不同的工作技巧, 這些肯定能影響到系統的安全. sudo 通常被用來只執行單一的命令, 當 su 被通常使用打開一個 shell 并執行多條命令. sudo 盡量減少一個離開時被打開 Ubuntu root shell 的可能性, 并鼓勵減少用戶的 Ubuntu root 特權.
我不能進入單用戶模式!
在 Ubuntu 的 sulogin 程式被計劃修改來處理被鎖住的 Ubuntu root 口令.
【編輯推薦】