Ubuntu 中新增使用者並授予 sudo 權限的方法|安全且高效的設定指南

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 群組

  1. 使用 usermod 指令
    以下指令可將指定的使用者加入 sudo 群組:
sudo usermod -aG sudo 使用者名稱

執行該指令後,使用者需要先登出並重新登入,才能使 sudo 權限生效。

  1. 使用 gpasswd 指令
    另一種方法是透過 gpasswd 指令來新增使用者至 sudo 群組:
sudo gpasswd -a 使用者名稱 sudo

編輯 sudoers 文件

另一種授予 sudo 權限的方法是直接編輯 sudoers 文件。
此文件負責定義哪些使用者可以執行 sudo 指令,適用於需設定特定權限的使用者。

  1. 使用 visudo 指令編輯 sudoers
    建議使用 visudo 指令來編輯 sudoers 文件,避免發生語法錯誤。使用以下指令開啟文件:
sudo visudo
  1. 編輯 sudoers 以授權特定使用者
    要授予某個使用者 sudo 權限,可以在 sudoers 文件中加入以下設定:
使用者名稱 ALL=(ALL:ALL) ALL
  1. 限制 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 權限,是系統管理中非常重要的技能。
透過以下幾個要點,可以提升系統的安全性並確保管理效率:

  1. 區分不同的新增使用者指令
    透過 adduser 和 useradd 指令的不同特性,可以選擇最適合的方式來新增使用者。對於一般使用者,建議使用 adduser,而在自動化管理中則可使用 useradd。
  2. 管理與確認 sudo 權限
    將使用者加入 sudo 群組是最常見的做法,此外,也可以透過 sudoers 文件來進行更細緻的權限配置。使用 sudo -l 指令可以確認權限是否正確設定。
  3. 確保系統安全
    應限制 sudo 權限僅授予必要的使用者,並定期審查權限配置。此外,透過 sudo 指令的使用紀錄,可以監控系統操作是否符合安全規範。

掌握這些基本操作後,將能夠更安全且高效地管理 Ubuntu 系統。
請妥善管理使用者與權限設定,以確保系統的穩定運行。

年収訴求