前些天小編作一篇linux安裝python的文章中遇到了很多問題,最重要的問題是關于權限不足的問題。相信很多剛開始學習linux的小伙伴使用某些命令或者更改系統(tǒng)的某些文件的時候都會遇到這樣的情況。這時候我們有兩種解決方式:切換到root用戶;或者進行l(wèi)inux用戶提權,今天我們就來介紹下有關linux用戶提權的那些事。
權限,決定安全
不管是在linux還是Windows,用戶都有進行分組,linux的最高權限用戶叫root用戶,Windows的最高權限用戶叫administrator。在最高權限下還有一些普通用戶。一個系統(tǒng)有很多的軟件和配置文件,有些內容如果隨意修改,就會造成一些不可預料的后果,所以一般普通用戶數(shù)是不能修改這些內容的,只有超級管理員用戶可以進行修改。在Windows中可能你在使用的已經(jīng)是超級管理員用戶了,因為Windows對這方面要求比較寬松(不過近些年來Windows也在要求用戶不隨意使用administrator用戶用于日常操作,比如說一些個人化的功能administrator用戶是不能使用的,比如Windows hello)。而linux的發(fā)行版中默認是使用一個普通用戶的,在需要一些操作的時候進行提權,這就避免了用戶的誤操作導致系統(tǒng)崩潰。
學習linux的時候小編聽過這樣一個玩笑,如果你對你的工作不滿,就到服務器運行?
rm -rf /*
?(危險行為,請勿模仿),然后跑路,這行代碼的功能有個簡單的形容——刪庫,他的作用是把系統(tǒng)掛載的根節(jié)點下面的所有內容刪除(也就是刪除這個系統(tǒng))。這個命令在普通用戶權限下是不能使用的,這在一定程度上保護了linux系統(tǒng)的安全。另外,以滲透測試出名的kali Linux,在以前是可以直接使用root用戶的(小編依稀記得是2018版本之前),現(xiàn)在的kali Linux要求用戶在裝系統(tǒng)的時候創(chuàng)建一個普通用戶然后使用普通用戶??梢奓inux對root用戶的使用做出了一定收束
還有一個類linux(剛開始使用linux內核,后來被linux移出linux分支的Android)的系統(tǒng)——安卓系統(tǒng),在早期安卓系統(tǒng)是帶有root權限的,沒有root權限也可以使用工具刷root,現(xiàn)在的安卓已經(jīng)不能刷root權限了。
如何申請必要的權限
我們之前說了,普通權限是沒有資格去做一些更改系統(tǒng)的配置和使用一些命令的,這時候我們就需要想辦法進行系統(tǒng)的提權,提權分為兩種,一種是暫時提權,一種是切換到超管用戶。他們的操作都是不一樣的,接下來我們就來看看這些操作怎么做吧。
如何區(qū)分權限
linux的終端由用戶名+#或者$構成,輸入命令在#或者$后(如下圖所示),如果這個標識是#說明當前擁有管理員權限,如果是$說明沒有管理員權限。
sudo命令
sudo命令作為一個linux用戶提權的命令,他可以用來給某些需要管理員權限的命令進行提權,也可以給當前用戶進行短暫的提權。簡單的用法主要有如下兩種:
?sudo -i
?:這個命令可以在當前終端窗口給用戶提權到超級管理員權限,在這個終端窗口內用戶可以使用超級管理員權限知道該窗口被關閉。在使用這個命令的時候需要輸入自己的密碼(不是root賬戶的密碼)。
?sudo 命令行
?:這個命令可以給接下來的一句命令進行提權,但是命令結束后仍然是普通管理員權限。
su命令
?su
?命令是一個切換用戶身份的命令,我們可以使用?su
?命令來切換到管理員身份,這樣我們也能獲得管理員權限。?su
?命令有兩種寫法,一種是?su
?,一種是?su -
?,兩種命令有一定區(qū)別:前者只是切換了root身份,但Shell環(huán)境仍然是普通用戶的Shell;而后者連用戶和Shell環(huán)境一起切換成root身份了。只有切換了Shell環(huán)境才不會出現(xiàn)PATH環(huán)境變量錯誤。
使用su命令也要輸入密碼。
小結
以上就是有關linux用戶提權的所有內容了。更多l(xiāng)inux的使用小竅門可以多多關注W3Cschool!