1. 簡介
為什麼要在 Ubuntu 上進行使用者管理?
在使用 Ubuntu 等 Linux 系統時,可能需要為系統新增多個使用者,並為每位使用者分配不同的權限。
例如,在家庭或工作場所共用一台電腦時,透過為每位使用者建立獨立的登入帳戶來管理個人檔案與設定,不僅可以保護隱私,還能避免潛在的問題發生。
此外,根據使用者的需求限制可存取的功能與操作範圍,有助於提升系統整體的安全性。
特別是 Linux 廣泛應用於企業伺服器環境,系統管理員應僅為必要的使用者提供管理員權限,並為其他使用者分配一般權限,以降低因誤操作導致系統崩潰的風險。
sudo 權限的重要性與用途
在 Ubuntu 中,執行需要管理員權限的操作時,需要使用「sudo(超級使用者 do)」指令。
這個指令能夠暫時授予系統管理所需的權限,但對於一般使用者來說,並非可以執行所有操作,而是僅能在特定的管理員權限範圍內執行允許的操作。
擁有 sudo 權限後,可以執行以下操作:
- 安裝或移除新的軟體
- 更新系統
- 修改網路設定
- 新增或刪除使用者與群組
這些操作涉及系統核心設定,一旦誤刪重要檔案或造成安全漏洞,可能導致系統運行異常。
因此,sudo 權限應當謹慎管理,並僅授予必要的使用者。
本文的目的
本文章將清楚說明如何在 Ubuntu 上新增使用者,以及如何為其授予 sudo 權限。
此外,還將介紹如何管理擁有 sudo 權限的使用者,並提醒在分配權限時應注意的事項,幫助讀者安全地管理系統。
2. 基本的使用者新增方法
adduser 指令與 useradd 指令的區別
在 Ubuntu 中,主要可以使用「adduser」和「useradd」兩種指令來建立新使用者。
這兩個指令都能夠新增使用者,但用法和適用場景有所不同,因此理解各自的特點並加以區分使用會更有效率。
adduser 指令
「adduser」指令是 Ubuntu 推薦用來新增使用者的方式。
它是一個比 useradd 更高層級的指令,會自動建立使用者的主目錄並進行初始設定。
此外,adduser 具有互動式操作流程,即使是初學者也能輕鬆完成設定。以下是基本的使用方式:
sudo adduser 使用者名稱
執行此指令後,系統將要求輸入以下資訊:
- 完整名稱
- 電話號碼(辦公室或家用)
- 其他備註
填寫這些資訊後,系統會自動建立主目錄並完成基本設定。
useradd 指令
另一方面,「useradd」指令則提供較低層級的操作,適合需要更細緻控制使用者設定的場合。
與 adduser 不同,useradd 不會自動建立主目錄,若需要則必須使用選項手動指定。以下是基本使用方式:
sudo useradd -m 使用者名稱
「-m」選項可確保新使用者的主目錄會被建立。
相比之下,useradd 更適用於系統管理員在腳本或特殊用途時進行批量管理。
adduser 與 useradd 的選擇
一般來說,在標準的 Ubuntu 環境下,建議使用 adduser 指令來新增使用者,因為它簡單且自動化程度較高。
但如果需要更精細的控制,例如自動化腳本或特定的系統管理需求,則可以使用 useradd。了解它們的特點並靈活應用,有助於提高 Ubuntu 使用者管理的效率。
3. 如何授予 sudo 權限
將使用者加入 sudo 群組
在 Ubuntu 中,最常見的方式是將使用者加入「sudo 群組」,這樣該使用者就可以臨時獲得管理員權限,並執行系統設定、更改或安裝軟體等操作。
使用指令將使用者加入 sudo 群組
- 使用 usermod 指令
以下指令可將指定的使用者加入 sudo 群組:
sudo usermod -aG sudo 使用者名稱
執行該指令後,使用者需要先登出並重新登入,才能使 sudo 權限生效。
- 使用 gpasswd 指令
另一種方法是透過 gpasswd 指令來新增使用者至 sudo 群組:
sudo gpasswd -a 使用者名稱 sudo
編輯 sudoers 文件
另一種授予 sudo 權限的方法是直接編輯 sudoers
文件。
此文件負責定義哪些使用者可以執行 sudo 指令,適用於需設定特定權限的使用者。
- 使用 visudo 指令編輯 sudoers
建議使用visudo
指令來編輯sudoers
文件,避免發生語法錯誤。使用以下指令開啟文件:
sudo visudo
- 編輯 sudoers 以授權特定使用者
要授予某個使用者 sudo 權限,可以在 sudoers 文件中加入以下設定:
使用者名稱 ALL=(ALL:ALL) ALL
- 限制 sudo 權限僅適用於特定指令
也可以僅允許使用者執行特定的 sudo 指令:
testuser ALL=(ALL) /usr/bin/apt
4. sudo 權限設定的確認與安全性注意事項
如何確認 sudo 權限設定
在為使用者授予 sudo 權限後,確認該權限是否正確生效是非常重要的步驟。
sudo 權限允許使用者執行影響整個系統的操作,因此應謹慎檢查配置是否正確。
使用 sudo -l 指令進行確認
可以使用以下指令來檢查使用者是否擁有 sudo 權限:
sudo -l
執行該指令後,系統會列出該使用者可執行的 sudo 指令清單。
如果顯示「ALL」,則表示該使用者擁有執行所有 sudo 指令的權限。
安全性注意事項
在 Ubuntu 中為使用者授予 sudo 權限時,應考慮以下安全性因素,以確保系統的安全性。
僅授予必要的權限
sudo 權限允許使用者進行系統級的更改,因此應盡量限制擁有該權限的使用者數量,以降低安全風險。
管理與備份 sudoers 文件
雖然可以使用 sudo visudo
指令來防止語法錯誤,但在編輯 sudoers 文件之前,建議先備份原始文件,以避免誤操作導致系統無法正常運作。
檢查 sudo 指令的使用紀錄
定期檢查 sudo 指令的使用紀錄有助於監控系統安全性。可使用以下指令查看 sudo 的使用歷史:
sudo cat /var/log/auth.log | grep sudo
定期審查使用者權限
擁有 sudo 權限的使用者越多,系統的安全風險越高。應定期審查 sudo 權限的配置,移除不再需要的使用者,並謹慎選擇新授權的使用者。

5. 使用者新增與管理的常見問題
已將使用者加入 sudo 群組,但權限未生效
當將使用者加入 sudo 群組後,權限可能不會立即生效。
此時,請先讓使用者登出並重新登入,以使 sudo 群組的變更生效。
如果權限仍未正確生效,可以使用以下指令來確認該使用者是否屬於 sudo 群組:
id 使用者名稱
如何移除使用者的 sudo 權限
若要移除某位使用者的 sudo 權限,可以將其從 sudo 群組中刪除:
sudo gpasswd -d 使用者名稱 sudo
如何將使用者加入多個群組
可以讓使用者同時屬於多個群組,以便擁有不同的權限。使用以下指令:
sudo usermod -aG 群組名稱1,群組名稱2 使用者名稱
如何限制 sudo 權限僅適用於特定指令
如果不希望使用者擁有所有 sudo 權限,而僅允許執行特定指令,可以在 sudoers 文件中進行設定,例如:
使用者名稱 ALL=(ALL) /usr/bin/apt
6. 總結
本篇文章介紹了在 Ubuntu 中新增使用者與管理權限的方法。
適當地新增使用者並配置 sudo 權限,是系統管理中非常重要的技能。
透過以下幾個要點,可以提升系統的安全性並確保管理效率:
- 區分不同的新增使用者指令
透過 adduser 和 useradd 指令的不同特性,可以選擇最適合的方式來新增使用者。對於一般使用者,建議使用 adduser,而在自動化管理中則可使用 useradd。 - 管理與確認 sudo 權限
將使用者加入 sudo 群組是最常見的做法,此外,也可以透過 sudoers 文件來進行更細緻的權限配置。使用sudo -l
指令可以確認權限是否正確設定。 - 確保系統安全
應限制 sudo 權限僅授予必要的使用者,並定期審查權限配置。此外,透過 sudo 指令的使用紀錄,可以監控系統操作是否符合安全規範。
掌握這些基本操作後,將能夠更安全且高效地管理 Ubuntu 系統。
請妥善管理使用者與權限設定,以確保系統的穩定運行。