使用者身份切換 su sudo

2021-07-12 02:25:06 字數 1599 閱讀 9966

使用一般賬號:系統平日操作的好習慣

事實上,為了安全的緣故,盡量一般以一般身份使用者來操作linux的日常作業,等到需要設定系統環境時,才變換身份稱為root來進行系統管理,相對比較安全,避免做錯一些嚴重的命令,例如「rm-rf/"

用較低許可權啟動系統服務

相對於系統安全,有的時候,我們必須要以某些系統賬號來進行程式的執行。例如,linux主機上面的一套軟體,名稱為apache,我們可以額外新建乙個名為apache的使用者來啟動apache軟體,如此一來,如果這個程式被攻破,至少系統還不至於損壞了。

軟體本身的限制

ssh可以設定拒絕root登入。

su

su[-lm] [-c命令] username

引數:-:單純使用-,如su - ,代表使用login-shell的變數檔案讀取方式來登入系統;若使用者名稱沒有加上去,則代表切換為root的身份

-l:與-類似,但後面需要加欲切換的使用者賬號。也是login-shell的方式。

-c:僅進行一次命令,所以-c後面可以加上命令。想要執行乙個只有root才能進行的命令,且執行完畢就恢復原本的身份。

su用法當中,有沒有加「-」差別很大。單純使用「su」切換成root的身份,讀取的變數設定方式為non-login shell的方式,這種方式下很多原本的變數不會被改變,尤其是path這個變數,由於沒有被改變成為root的環境(一堆 /sbin, /usr/bin等目錄都沒有被包含進來)。

如果想要離開root的身份則得要利用exit離開才行。

使用「su -"命令

su的用法:

若要完整地切換到新使用者的環境,必須要使用「su -username」或"su - l username",才會連同path/user/mail等變數都轉成新使用者的環境。

如果僅想要執行一次root的命令,可以利用「su - -c命令串」的方式來處理。

使用root切換稱為任何使用者時,並不需要輸入新使用者的密碼。

sudo

相對於su需要了解新切換的使用者密碼(經常是需要root的密碼),sudo的執行則僅需要自己的密碼即可。甚至可以設定不需要密碼即可執行sudo.由於sudo可以讓你以其他使用者的身份執行命令(通常是使用root的身份來執行命令),因此並非所有人都能夠執行sudo,而是僅有/etc/sudoers內的使用者才能夠執行sudo這個命令。

1. 當使用者執行sudo時,系統於/etc/sudoers檔案中查詢該使用者是否有執行sudo的許可權;

2. 若使用者具有可執行sudo的許可權後,便讓使用者輸入使用者自己的密碼來確認;

3. 若密碼輸入成功,便開始進行sudo後續接的命令(但root執行sudo時不需要輸入密碼);

4. 若欲切換的身份與執行者身份相同,那也不需要輸入密碼。

所以說,sudo執行的重點是,能否使用sudo必須要看/etc/sudoers的設定值。

使用者身份切換 su sudo

1.1 完整的切換到新使用者環境 環境變數也會切換 su username 或su l username1.2 僅想執行一次root命令 su c 命令串 1.3 使用root切換成為任何使用者時,並不需要輸入新使用者的密碼。僅需要自己的密碼,甚至可以設定不需要密碼即可執行sudo 但僅有 etc ...

liunx 使用者切換 su sudo

liunx 使用者操作 useradd test passwd test 使用者身份切換 su 切換使用者 需要知道切換使用者的密碼 1.su lm c命令 username su login shell方式登入root賬號 su login nologinshell登入 su c head n 3...

切換使用者命令 su sudo

使用root使用者登入可能會由於人為的誤操作導致資料丟失。通用做法是使用普通使用者登入並使用系統,當需要執行管理操作時,再切換到root使用者執行管理操作。臨時切換使用者命令su su root password 普通使用者切換到root使用者時,需要輸入root使用者密碼 root使用者切換到普通...