詳解Linux系統(tǒng)中的root權限控制
在Linux操作系統(tǒng)中,root的權限是最高的,也被稱為超級權限的擁有者。普通用戶無法執(zhí)行的操作,root用戶都能完成,所以也被稱之為超級管理用戶。
在系統(tǒng)中,每個文件、目錄和進程,都歸屬于某一個用戶,沒有用戶許可其它普通用戶是無法操作的,但對root除外。root用戶的特權性還表現(xiàn)在root 可以超越任何用戶和用戶組來對文件或目錄進行讀取、修改或刪除(在系統(tǒng)正常的許可范圍內(nèi));對可執(zhí)行程序的執(zhí)行、終止;對硬件設備的添加、創(chuàng)建和移除等; 也可以對文件和目錄進行屬主和權限進行修改,以適合系統(tǒng)管理的需要(因為root是系統(tǒng)中權限最高的特權用戶);
一、對超級用戶和普通用戶的理解;
1、什么是超級用戶;
在所有Linux系統(tǒng)中,系統(tǒng)都是通過UID來區(qū)分用戶權限級別的,而UID為0的用戶被系統(tǒng)約定為是具有超級權限。超級用戶具有在系統(tǒng)約定的最高權限滿 園內(nèi)操作,所以說超級用戶可以完成系統(tǒng)管理的所有工具;我們可以通過/etc/passwd 來查得UID為0的用戶是root,而且只有root對應的UID為0,從這一點來看,root用戶在系統(tǒng)中是無可替代的至高地位和無限制權限。root 用戶在系統(tǒng)中就是超級用戶;
2、理解 UID 和用戶的對應關系
當系統(tǒng)默認安裝時,系統(tǒng)用戶和UID 是一對一的對關系,也就是說一個UID 對應一個用戶。我們知道用戶身份是通過UID 來確認的,我們在 《用戶(user)和用戶組(group)配置文件詳解》中的UID 的解說中有談到"UID 是確認用戶權限的標識,用戶登錄系統(tǒng)所處的角色是通過UID 來實現(xiàn)的,而非用戶名;把幾個用戶共用一個UID 是危險的,比如我們把普通用戶的UID 改為0,和root共用一個UID ,這事實上就造成了系統(tǒng)管理權限的混亂。如果我們想用root權限,可以通過su或sudo來實現(xiàn);切不可隨意讓一個用戶和root分享同一個UID ;"
在系統(tǒng)中,能不能讓UID 和用戶是一對多的關系?是可以的,比如我們可以把一個UID為0這個值分配給幾個用戶共同使用,這就是UID 和用戶的一對多的關系。但這樣做的確有點危險;相同UID的用戶具有相同的身份和權限。比如我們在系統(tǒng)中把beinan這個普通用戶的UID改為0后,事 實上這個普通用戶就具有了超級權限,他的能力和權限和root用戶一樣;用戶beinan所有的操作都將被標識為root的操作,因為beinan的 UID為0,而UID為0的用戶是root ,是不是有點擾口?也可以理解為UID為0的用戶就是root ,root用戶的UID就是0;
UID和用戶的一對一的對應關系 ,只是要求管理員進行系統(tǒng)管理時,所要堅守的準則,因為系統(tǒng)安全還是第一位的。所以我們還是把超級權限保留給root這唯一的用戶是最好的選擇;
如果我們不把UID的0值的分享給其它用戶使用,只有root用戶是唯一擁有UID=0的話,root用戶就是唯一的超級權限用戶;
3、普通用戶和偽裝用戶
與超級用戶相對的就是普通用戶和虛擬(也被稱為偽裝用戶),普通和偽裝用戶都是受限用戶;但為了完成特定的任務,普通用戶和偽裝用戶也是必須 的;Linux是一個多用戶、多任務的操作系統(tǒng),多用戶主要體現(xiàn)在用戶的角色的多樣性,不同的用戶所分配的權限也不同;這也是Linux系統(tǒng)比Windows系統(tǒng)更為安全的本質所在,即使是現(xiàn)在最新版本的Windows 2003 ,也無法抹去其單用戶系統(tǒng)的烙??;
二、超級用戶(權限)在系統(tǒng)管理中的作用
超級權限用戶(UID為0的用戶)到底在系統(tǒng)管理中起什么作用呢?主要表現(xiàn)在以下兩點;
1、對任何文件、目錄或進程進行操作;
但值得注意的是這種操作是在系統(tǒng)最高許可范圍內(nèi)的操作;有些操作就是具有超級權限的root也無法完成;
比如/proc 目錄,/proc 是用來反應系統(tǒng)運行的實時狀態(tài)信息的,因此即便是root也無能為力;它的權限如下
[root@localhost ~]# pwd
/root
[root@localhost ~]# cd /
[root@localhost /]# ls -ld /proc/
dr-xr-xr-x 134 root root 0 2005-10-27 /proc/
就是這個目錄,只能是讀和執(zhí)行權限,但絕對沒有寫權限的;就是我們把/proc 目錄的寫權限打開給root,root用戶也是不能進行寫操作;
[root@localhost ~]# chmod 755 /proc
[root@localhost /]# ls -ld /proc/
drwxr-xr-x 134 root root 0 2005-10-27 /proc/
[root@localhost /]# cd /proc/
[root@localhost proc]# mkdir testdir
mkdir: 無法創(chuàng)建目錄'testdir': 沒有那個文件或目錄
2、對于涉及系統(tǒng)全局的系統(tǒng)管理;
硬件管理、文件系統(tǒng)理解、用戶管理以及涉及到的系統(tǒng)全局配置等等……如果您執(zhí)行某個命令或工具時,提示您無權限,大多是需要超級權限來完成;
比如用adduser來添加用戶,這個只能用通過超級權限的用戶來完成;
3、超級權限的不可替代性;
由于超級權限在系統(tǒng)管理中的不可缺少的重要作用,為了完成系統(tǒng)管理任務,我們必須用到超級權限;在一般情況下,為了系統(tǒng)安全,對于一般常規(guī)級別的應用,不 需要root用戶來操作完成,root用戶只是被用來管理和維護系統(tǒng)之用;比如系統(tǒng)日志的查看、清理,用戶的添加和刪除……
在不涉及系統(tǒng)管理的工作的環(huán)境下,普通用戶足可以完成,比如編寫一個文件,聽聽音樂;用gimp 處理一個圖片等…… 基于普通應用程序的調用,大多普通用戶就可以完成;
當我們以普通權限的用
版權聲明:本站文章來源標注為YINGSOO的內(nèi)容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內(nèi)容涉嫌侵權,請聯(lián)系alex-e#qq.com處理。