當您想向系統添加多個用戶時,用戶管理成為一個重要的考慮因素。 如果您系統上的用戶管理無效,您可能不得不損害安全性以及對系統上私人和敏感信息的訪問。 本文介紹了可用於有效控制用戶管理的簡單技術。 它涵蓋了從用戶界面和命令行進行的用戶和組管理過程,您可以通過非常簡單的步驟執行這些過程。
我們在 Ubuntu 20.04 系統上運行本文中描述的命令和進程。 請注意,您必須具有 root 權限才能執行此處描述的任務。 那麼我們先來了解一下什麼是root?
了解root用戶
在我們開始用戶管理之前,了解 Linux 中的 root 用戶是很重要的。 默認情況下,Ubuntu 不允許 root 用戶直接登錄(但其他 Linux 發行版如 Debian 和 CentOS 允許直接 root 登錄); 因此,Ubuntu 創建了一個名為“sudo”,允許您執行各種管理操作。 隨著 sudo 命令,您必須指定密碼,這有助於讓用戶以管理員身份負責所有操作。 默認情況下,在安裝 Ubuntu 期間創建的第一個用戶被賦予 sudo 特權。 它被賦予完全的 root 權限並被添加到 /etc/sudoers 文件中的 sudoers 列表中。
需要注意的是,您必須是授權的 sudoer 用戶才能執行本文中說明的所有用戶管理操作。
管理用戶
可以通過UI向Ubuntu系統添加用戶; 但是,高級用戶管理需要通過命令行來完成。
通過 GUI 添加用戶
請按照以下步驟通過 Ubuntu 的圖形界面添加用戶:
通過 Ubuntu Dash 或單擊位於 Ubuntu 屏幕右上角的向下箭頭打開“帳戶設置”對話框。 單擊您的用戶名,然後選擇帳戶設置,如下所示:
將打開以下用戶對話框。 請注意,默認情況下所有字段都將被禁用。 您需要提供身份驗證才能進一步使用此對話框。 單擊位於“用戶”對話框右上角的“解鎖”按鈕。
以下身份驗證對話框將為您打開以作為管理員提供身份驗證信息,因為只有這樣您才能創建或編輯用戶帳戶:
請提供您的密碼,然後單擊 認證 按鈕。 您現在將能夠看到“用戶”對話框中的所有字段都已啟用以供您處理:
點擊 添加用戶 按鈕。 將打開以下添加用戶對話框供您輸入要創建的新用戶的詳細信息:
您可以通過此對話框指定是要創建標準用戶還是管理用戶。 同樣重要的是要知道,將新用戶的密碼字段留空不是一個好的安全做法。 這樣,任何用戶都可以登錄並訪問您系統上的私人和安全數據。
點擊 添加 按鈕,只有當您在“添加用戶”對話框中提供了所有有效信息時才會啟用該按鈕。
現在將創建新用戶,您將能夠在“用戶”對話框中看到它,如下所示:
通過命令行添加用戶
Ubuntu 命令行為管理員提供了更多的控制權來執行用戶管理操作。 請按照以下步驟通過命令行添加用戶:
- 按 Ctrl+Alt+T 或通過 Ubuntu Dash 打開終端。
- Enter 以下命令以添加新用戶:
$ sudo 添加用戶 [username]
您將需要輸入密碼 sudo. 該命令將要求為新用戶鍵入並重新鍵入密碼(用於重新確認)。 您可以選擇提供或忽略輸入新用戶的生物數據,因為它是可選的。
Enter 是 如果您提供的信息正確,然後點擊 Enter 鑰匙。
現在將在您的 Ubuntu 系統上創建新用戶。
列出所有用戶
作為 Ubuntu 管理員,您可以通過以下命令查看添加到您系統中的用戶列表:
$ awk -F’:’ ‘$2 ~ “$” {print $1}’ /etc/shadow
在這張圖中,sana 是管理員,guest 是我們通過 UI 創建的用戶,guest 用戶是我們通過命令行創建的用戶。
鎖定/解鎖用戶帳戶
Ubuntu 允許您通過以下命令臨時鎖定和解鎖任何用戶帳戶:
$ sudo passwd -l 用戶名 $ sudo passwd -u 用戶名
被鎖定的用戶在他/她處於鎖定狀態之前將無法登錄系統。
授予用戶根權限
如果您想為用戶授予 root 權限,則需要編輯包含系統上 sudoer 列表的 visudo 文件。
通過以下命令打開visudo文件:
$ sudo 納米視覺
此命令將在 Nano 編輯器中打開 visudo 文件。
在文件中添加以下幾行:
[username] 全部=(全部)全部
此行將為指定用戶提供完全的 root 權限。
User_Alias ADMINS = [username]
Cmnd_Alias HTTPD = /etc/init.d/httpd ADMINS ALL = HTTPD
這些行將創建一組用戶,然後您可以為其分配命令別名。
Exit 通過 Ctrl+X 輸入文件,然後輸入 Y 和 Enter 為了保存您對 visudo 文件所做的更改。
來自我們的“訪客”用戶 example 現在將能夠執行所有根操作。
通過命令行刪除用戶
您可以使用以下命令通過命令行刪除用戶:
$ sudo 騙子 [username]
在這 example,我們已經刪除了訪客用戶。 請記住,如果用戶從沒有更多成員的組中刪除,該用戶組也將自動刪除。
通過 GUI 刪除用戶
您可以通過圖形界面執行刪除用戶的簡單任務,如下所示:
- 打開 帳號設定 通過 Ubuntu dash 或單擊位於 Ubuntu 屏幕右上角的向下箭頭打開對話框。 單擊您的用戶名,然後選擇帳戶設置。
- 這 用戶對話框 將打開。 請注意,所有字段都將被禁用。 您需要提供身份驗證才能進一步使用此對話框。 點擊 開鎖 按鈕位於用戶對話框的右上角。
- 選擇要刪除的用戶的用戶名,然後單擊 刪除用戶 按鈕如下:
系統將通過以下對話框詢問您是否要從系統中丟棄或保留已刪除用戶的文件
您可以通過相應的按鈕選擇刪除或保留文件。 然後該用戶將從您的系統中刪除
刪除/歸檔已刪除用戶的主文件夾
當您從系統中刪除用戶時,其主文件夾可能仍駐留在您的計算機上,具體取決於您在刪除用戶時所做的選擇。 您可以手動刪除此文件夾或將其存檔。 您使用與已刪除用戶相同的用戶 ID 或組 ID 創建的新用戶現在可以訪問他/她的文件夾。 您可能希望將這些 UID/GID 值更改為更合適的值,例如 root 帳戶,您甚至可以通過以下命令選擇重新定位文件夾以避免將來發生衝突:
$ sudo chown -R root:root /home/用戶名/ $ sudo mkdir /home/archived_users/ $ sudo mv /home/username /home/archived_users/
管理群組
Ubuntu 允許您為系統上的用戶創建組。 通過這種方式,您可以將管理權限和文件訪問權分配給整個組,而不是一次分配給單個用戶。
您只能通過命令行在 Ubuntu 18 上執行組管理。
添加組
要添加新用戶組,請輸入以下命令:
$ sudo 添加組 [groupname]
例子:
將創建一個新組並為其分配一個唯一的組 ID(GID)。
將用戶添加到組
您可以通過以下命令將現有用戶添加到組中:
$ sudo 添加用戶 [username] [groupname]
例子:
查看群組信息
要查看組的成員,請使用以下命令:
$ 組用戶名
您可以使用以下命令列出組成員及其 GID
$ id 用戶名
gid 輸出表示分配給用戶的主要組。 請進一步閱讀以了解什麼是主要和次要組。
更改用戶的主要組
一個用戶可以是一個或多個組的一部分; 其中一個是主要組,其他是次要組。 在 id 命令的輸出中,gid 表示用戶的主要組。 要更改用戶的主要組,請使用以下命令:
$ sudo 用戶模式 -g [newPrimaryGroup] [username]
例子:
您現在可以看到通過 id 命令獲取的新 gip 是新分配的主要組的 gip。
創建用戶時分配組
您可以在創建新用戶的同時為用戶分配一個組,如下所示:
$ sudo 用戶添加 -G [groupname] [username]
例子:
為用戶設置或更改密碼
請注意,此新用戶尚未分配密碼。 這不是一個好的安全實踐,因此您應該盡快通過以下命令為這個新用戶分配密碼:
$ sudo 密碼 [username]
例子:
新用戶現在將擁有密碼。
請在下面的 UI 圖像中查看系統如何在分配密碼之前禁用用戶帳戶。
列出所有組
您可以通過以下命令列出駐留在系統上的所有組:
$ sudo getent 組
刪除群組
為了從您的系統中刪除用戶組,您可以使用以下命令:
$ sudo 刪除組 [groupname]
本文解釋瞭如何管理 Ubuntu 系統上的用戶和組以進行有效的權限控制。 您可以通過本教程中描述的有用步驟,以管理員身份管理用戶或向其他用戶授予管理權限以執行這些操作。