|
|
|
|
|
要完成本教程,你需要訪(fǎng)問(wèn)運(yùn)行 Ubuntu 20.04 的服務(wù)器,并確保你具有對(duì)服務(wù)器的root訪(fǎng)問(wèn)權(quán)限,以及啟用了防火墻。
Ubuntu 系統(tǒng)上安裝了一個(gè)名為sudo
的工具,sudo
允許你以其他用戶(hù)的身份運(yùn)行命令,包括具有管理權(quán)限的用戶(hù)。
在本指南中,你將了解如何創(chuàng)建用戶(hù)帳戶(hù)、分配sudo
權(quán)限和刪除用戶(hù)。
添加用戶(hù)
如果你以root用戶(hù)身份登錄,則可以隨時(shí)通過(guò)運(yùn)行以下命令創(chuàng)建新用戶(hù):
# adduser newuser
如果你以已被授予權(quán)限的非root用戶(hù)身份登錄,sudo
則可以使用以下命令添加新用戶(hù):
$ sudo adduser newuser
無(wú)論哪種方式,你都需要回答一系列問(wèn)題:
為新用戶(hù)分配并確認(rèn)密碼。
Enter
跳過(guò)。Y
繼續(xù)。如果你需要新用戶(hù)具有管理權(quán)限,請(qǐng)繼續(xù)下一部分。
授予用戶(hù) Sudo
權(quán)限
如果你的新用戶(hù)應(yīng)該能夠以root(管理)權(quán)限執(zhí)行命令,你將需要授予新用戶(hù)訪(fǎng)問(wèn)sudo
,讓我們研究一下完成這項(xiàng)任務(wù)的兩種方法:首先,將用戶(hù)添加到預(yù)定義的sudo
用戶(hù)組中;其次,在sudo
的配置中為每個(gè)用戶(hù)指定權(quán)限。
將新用戶(hù)添加到 Sudo
組
你可以使用以下groups
命令查看新用戶(hù)所在的組:
$ groups newuser
輸出:
Output
newuser : newuser
默認(rèn)情況下,新用戶(hù)僅在他們自己的組adduser
中,因?yàn)槌擞脩?hù)配置文件之外還創(chuàng)建了此組。用戶(hù)和它自己的組共享相同的名稱(chēng)。為了將用戶(hù)添加到新組,你可以使用以下usermod
命令:
# usermod -aG sudo newuser
該-aG
選項(xiàng)告訴usermod
將用戶(hù)添加到列出的組中。
請(qǐng)注意,usermod
命令本身需要sudo
特權(quán)。這意味著,如果你以root用戶(hù)或已添加為組成員的其他用戶(hù)身份登錄,你只能將用戶(hù)添加到sudo
組中。在后一種情況下,你必須在此命令前面加上sudo
,如本例所示:
$ sudo usermod -aG sudo newuser
在/etc/sudoers中指定顯式用戶(hù)權(quán)限
作為將用戶(hù)放入sudo組的替代方法,你可以使用visudo
命令打開(kāi)在系統(tǒng)默認(rèn)編輯器中調(diào)用的配置文件/etc/sudoers
,并明確指定每個(gè)用戶(hù)的權(quán)限。
使用visudo
是唯一推薦的更改/etc/sudoers
的方法,因?yàn)樗鼤?huì)鎖定文件以防止同時(shí)進(jìn)行多次編輯,并在覆蓋文件之前對(duì)其內(nèi)容執(zhí)行驗(yàn)證檢查。這有助于防止出現(xiàn)由于你失去sudu
權(quán)限而導(dǎo)致對(duì)sudo
配置錯(cuò)誤且無(wú)法解決問(wèn)題的情況。
如果你當(dāng)前以root身份登錄,請(qǐng)運(yùn)行以下命令:
# visudo
如果你以具有sodu
特權(quán)的非root用戶(hù)身份登錄,請(qǐng)運(yùn)行帶有sudo
前綴的相同命令:
$ sudo visudo
傳統(tǒng)上,visudo
在vi
編輯器打開(kāi)/etc/sudoers
,這可能會(huì)讓沒(méi)有經(jīng)驗(yàn)的用戶(hù)感到困惑。默認(rèn)情況下,在新安裝的 Ubuntu 上,visudo
使用nano
文本編輯器,它提供了更方便和可訪(fǎng)問(wèn)的文本編輯體驗(yàn)。使用箭頭鍵移動(dòng)光標(biāo),然后搜索如下所示的行:
/etc/sudoers
root ALL=(ALL:ALL) ALL
在此行下方,添加以下突出顯示的行。請(qǐng)務(wù)必更改newuser為你要授予sudo
權(quán)限的用戶(hù)配置文件的名稱(chēng):
/etc/sudoers
root ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL
為每個(gè)應(yīng)該被賦予完全sudo
權(quán)限的用戶(hù)添加這樣的新行。完成后,按CTRL + X,然后按Y,然后ENTER按確認(rèn)保存并關(guān)閉文件。
測(cè)試用戶(hù)的 Sudo 權(quán)限
現(xiàn)在你的新用戶(hù)能夠以管理權(quán)限執(zhí)行命令。
以新用戶(hù)身份登錄后,你可以通過(guò)正常輸入命令以普通用戶(hù)身份執(zhí)行命令:
$ some_command
你可以通過(guò)在命令前鍵入sudo
以管理權(quán)限執(zhí)行相同的命令:
$ sudo some_command
執(zhí)行此操作時(shí),系統(tǒng)將提示你輸入你登錄時(shí)使用的常規(guī)用戶(hù)帳戶(hù)的密碼。
刪除用戶(hù)
如果你不再需要用戶(hù),最好刪除舊帳戶(hù)。
你可以通過(guò)以root身份運(yùn)行以下命令來(lái)刪除用戶(hù)本身,而不刪除他們的任何文件:
# deluser newuser
如果你以另一個(gè)具有sudu
特權(quán)的非root用戶(hù)身份登錄,你將使用以下內(nèi)容:
$ sudo deluser newuser
如果你想在刪除用戶(hù)時(shí)刪除用戶(hù)的主目錄,則可以以root身份發(fā)出以下命令:
# deluser --remove-home newuser
如果你以具有sodu
特權(quán)的非root用戶(hù)身份運(yùn)行它,你將運(yùn)行帶有sodu
前綴的相同命令:
$ sudo deluser --remove-home newuser
如果你之前為刪除的用戶(hù)配置了sudo
權(quán)限,你可能需要再次刪除相關(guān)行:
# visudo
或者如果你是具有特權(quán)的非root用戶(hù),可以使用以下sudo
命令:
$ sudo visudo
/etc/sudoers
root ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL # DELETE THIS LINE
這將防止以相同名稱(chēng)創(chuàng)建的新用戶(hù)被意外授予sudo
權(quán)限。
結(jié)論
你現(xiàn)在應(yīng)該對(duì)如何在 Ubuntu 20.04 系統(tǒng)中添加和刪除用戶(hù)有了相當(dāng)好的了解。有效的用戶(hù)管理將允許您你分離用戶(hù)并僅授予他們完成工作所需的訪(fǎng)問(wèn)權(quán)限。