注意:

在 Oracle Linux 上建立使用者與群組

簡介

下列教學課程提供在 Oracle Linux 上執行使用者和群組管理的逐步程序。您將會建立使用者和群組、實行使用者專用群組,以及授予使用者更高的權限。

目標

在此實驗室中,您將:

軟硬體需求

注意:使用免費實驗室環境時,請參閱 Oracle Linux Lab Basics,瞭解連線和其他使用指示。

管理使用者帳號

在此區段中,您可以使用命令行公用程式建立新的使用者帳戶、檢視新增使用者時所更新的檔案、修改使用者帳戶、設定新使用者的密碼,以及以新使用者身分登入。

  1. 開啟終端機並連線至您的 Oracle Linux 執行處理。

  2. 成為 root 使用者。

    sudo su -
    
  3. root 使用者身分,新增名為 alice 的使用者。

    useradd alice
    

    使用者已新增至 /etc/passwd 檔案。

  4. 檢視 /etc/passwd 檔案中的 alice 項目。

    grep alice /etc/passwd
    

    灰色輸出

    執行結果顯示:

    • 新使用者的 UID 和 GID 相同 (1001)。
    • 已為新使用者 (/home/alice) 建立主目錄。
    • 新使用者的預設 Shell 為 /bin/bash
  5. 檢視本位目錄。

    ls -l /home
    

    ls 輸出

    在此範例中,opc 使用者已經存在。
    已為新使用者建立主目錄,因為 /etc/login.defs 中的 CREATE_HOME 參數設為 yes

  6. 檢視 /etc/login.defs 檔案中的 CREATE_HOME 參數。

    grep CREATE_HOME /etc/login.defs
    

    灰色輸出

  7. 檢視新使用者的預設設定,儲存於 /etc/default/useradd

    cat /etc/default/useradd
    

    預設值

    SKEL 參數設定為 /etc/skel

  8. 檢視 /etc/skel 目錄的內容。

    ls -la /etc/skel
    

    天空檔案

  9. 檢視 alice 本位目錄的內容。

    ls -la /home/alice
    

    本位目錄

    SKEL (/etc/skel) 的內容會複製到新使用者的主目錄。

  10. 檢視 /etc/group 檔案中的新 alice 項目。

    grep alice /etc/group
    

    群組檔案

    因為 Oracle Linux 使用使用者專用群組 (UPG) 配置,所以在建立 alice 使用者時已建立新的專用群組 (aliceGID=1001)。

  11. 修改 alice 使用者的 GECOS 資訊。在修改 GECOS 資訊之前和之後,檢視 /etc/passwd 檔案中的 alice 項目。

    grep alice /etc/passwd
    usermod -c "Alice Smith" alice
    grep alice /etc/passwd
    

    使用者模型

  12. alice 使用者建立 AB*gh246 密碼。在建立 alice 密碼之前和之後,檢視 /etc/shadow 檔案中的 alice 項目。

    grep alice /etc/shadow
    passwd alice
    grep alice /etc/shadow
    

    密碼

    alice!! 會由雜湊密碼值取代。

  13. 結束 root 登入,然後以 alice 使用者身分登入。在提示時提供 AB*gh246 的密碼。

    exit
    su - alice
    

    登入

  14. 確認您為 alice 使用者,而您目前的目錄是 alice 使用者的主目錄。

    whoami
    pwd
    

    驗證

  15. 結束 alice 使用者的 shell,然後成為 root 使用者。

    exit
    sudo su -
    

    root

  16. root 使用者身分,新增一個名為 oracle 的使用者,於本實驗室中稍後使用。

    useradd oracle
    
  17. oracle 使用者建立 XY*gh579 密碼。

    passwd oracle
    

    oracle pwd

管理群組帳戶

在此區段中,您可以建立新的群組帳戶,並將使用者新增至此新群組。

  1. root 使用者身分,新增一個名為 staff 的群組。

    groupadd staff
    

    群組會新增至 /etc/group 檔案。

  2. 檢視 /etc/group 檔案中的最後 10 個項目。

    tail /etc/group
    

    尾部輸出

    新群組的 GID (1003) 會以 1 遞增。

  3. alice 使用者新增至 staff 群組。檢視 /etc/group 檔案中的 staff 群組項目。

    usermod -aG 1003 alice
    grep staff /etc/group
    

    新增使用者

    alice 使用者在 staff 群組中有次要群組成員。

  4. 檢視價格的主要群組成員。

    grep alice /etc/passwd
    

    灰色輸出

    alice 使用者的主要群組仍然是 1001

實行使用者專用群組

在此區段中,您可以使用「使用者專用群組」配置,將不同使用者寫入單一目錄中的檔案。

  1. root 使用者身分建立 /staff 目錄。

    mkdir /staff
    
  2. 檢視 /staff 目錄及其權限。

    ls -ld /staff
    

    ls 輸出

  3. /staff 目錄的群組擁有權變更為 staff 群組。-R 選項 (遞迴) 會設定 /staff 內檔案和目錄的群組。變更群組所有權後,檢視 /staff 目錄及其權限。

    chgrp -R staff /staff
    ls -ld /staff
    

    主目錄

    /staff 目錄的所有者仍然為 root,但是群組現在是 staff

  4. /staff 目錄中設定 setgid 位元。然後檢視 /staff 目錄的權限。

    chmod -R 2775 /staff
    ls -ld /staff
    

    setgid,設定

    /staff 目錄的群組權限已變更。

  5. oracle 使用者新增至 staff 群組。新增 oracle 使用者之後,檢視 /etc/group 檔案中的 staff 項目。

    usermod -aG staff oracle
    grep staff /etc/group
    

    灰色輸出

    aliceoracle 使用者都具有 staff 群組中的次要群組成員身分。

  6. 成為 oracle 使用者。您不會收到 oracle 使用者密碼的提示,因為您目前是 root 使用者。確認您是 oracle 使用者,且目前的目錄是 oracle 使用者的本位目錄。

    su - oracle
    whoami
    pwd
    

    oracle user - oracle 使用者

  7. 顯示 oracle 使用者的群組成員資格。

    groups
    

    群組

    oracle 使用者屬於兩個群組 - oraclestaff

  8. 變更至 /staff 目錄。在 /staff 目錄中建立名為 oracle_file 的新檔案。顯示新檔案的權限和所有權。

    cd /staff
    touch oracle_file
    ls -l oracle_file
    

    oracle file - oracle 檔案

    staff 群組的權限為讀取 / 寫入。

  9. 成為 alice 使用者。在提示時提供 AB*gh246 的密碼。確認您為 alice 使用者。

    su - alice
    whoami
    

    原片

  10. 顯示價格使用者的群組成員資格。

    groups
    

    切割群

    alice 使用者屬於兩個群組 - alicestaff

  11. 變更至 /staff 目錄。在 /staff 目錄中建立名為 alice_file 的新檔案。顯示新檔案的權限和所有權。

    cd /staff
    touch alice_file
    ls -l
    

    檔案權限

    staff 群組具有讀取 / 寫入權限的兩個檔案。

  12. alice 使用者身分使用 touch 指令更新 oracle_file 上的時戳。檢視檔案以驗證時間已變更。

    touch oracle_file
    ls -l
    

    觸摸片

    更新時間戳記代表檔案具有 alice 使用者的寫入權限,即使檔案是由 oracle 使用者建立也一樣。

  13. 結束 alice 使用者的 shell,以及 oracle 使用者的 shell,以返回 root 使用者的 shell。確認您為 root 使用者。

    exit
    exit
    whoami
    

    檔案權限

選項 1:將提升的權限授予使用者

在此區段中,您可以新增項目至 /etc/sudoers 檔案,將 sudo 權限授予使用者。

  1. 成為 alice 使用者。您並不是提示輸入 alice 密碼,因為您目前是 root 使用者。確認您為 alice 使用者。

    su - alice
    whoami
    

    原片

  2. alice 使用者的身分,嘗試新增 newuser

    useradd newuser
    

    新增使用者

    alice 使用者沒有新增 newuser 的權限。

  3. 在之前的 useradd 指令前插入 sudo 指令來新增 newuser。在提示時提供 AB*gh246 的密碼。

    sudo useradd newuser
    

    sudo 失敗

    嘗試發出沒有適當授權的管理員命令,會報告在 /var/log/secure 檔案中。

  4. 結束 alice 使用者的 shell,以返回 root 使用者的 shell。檢視 /var/log/secure 檔案中的 sudoers 項目。

    exit
    grep sudoers /var/log/secure
    

    灰色柔道

    嘗試使用 /sbin/useradd 指令的 alice :user NOT in sudoers 項目位於 /var/log/secure 檔案中。範例中會顯示多個項目。您只能有一個項目。

  5. root 使用者身分,使用 visudo 指令編輯 /etc/sudoers 檔案。

    visudo
    

    此命令會使用 vim 編輯器開啟 /etc/sudoers 檔案。

  6. /etc/sudoers 檔案中,新增下列行以授予 alice 使用者執行 /sbin/useradd 指令的權限。

    alice   ALL=(ALL)       /sbin/useradd
    

    新項目會反白顯示。儲存您的變更並結束 visudo 指令。

    假

  7. 成為 alice 使用者。嘗試在不使用 sudo 指令的情況下增加 newuser。插入 sudo 指令,並嘗試再次新增 newuser。在提示時提供 AB*gh246 的密碼。

    su - alice
    useradd newuser
    sudo useradd newuser
    

    sudo 作品

  8. 確認已新增 newuser

    grep newuser /etc/passwd
    ls -l /home
    

    驗證 sudo

    newuser 現在已存在。在 /etc/sudoers 檔案中使用 alice 項目時,alice 使用者擁有 sudo 權限,可執行 /sbin/useradd 指令。

  9. 結束 alice shell,以返回 root shell。使用 visudo 指令,並從本實驗室之前新增的 /etc/sudoers 檔案刪除 alice 項目。

    exit
    visudo
    

    要刪除的項目會反白顯示。刪除整行,或者在此範例中,插入 # 字元來註解行。儲存您的變更並結束 visudo 指令。

    刪除項目

  10. 確認 alice 使用者無法再新增使用者。成為 alice 使用者。嘗試使用 sudo 指令新增 anotheruser

    su - alice
    sudo useradd anotheruser
    

    其他失敗

    嘗試發出沒有適當授權的管理員命令,會報告在 /var/log/secure 檔案中。

  11. 結束 alice 使用者的 shell,以返回 root 使用者的 shell。

    exit
    

選項 2:將提升的權限授予使用者

在此區段中,您可以將使用者新增至操控盤群組,來授予 sudo 權限。

  1. root 使用者身分,檢視 /etc/sudoers 檔案中的 wheel 項目。

    grep wheel /etc/sudoers
    

    輪

    /etc/sudoers 檔案中的 %wheel ALL= (ALL) ALL 項目可讓 wheel 群組中的任何成員執行 sudo 之前的指令。

  2. alice 使用者新增至 wheel 群組。確認 alice 使用者位於 wheel 群組中。

    usermod -aG wheel alice
    grep wheel /etc/group
    

    加法輪

    使用者價格輪子群組中具有次要群組成員。

  3. 成為 alice 使用者。您並不是提示輸入 alice 密碼,因為您目前是 root 使用者。確認您為 alice 使用者。

    su - alice
    whoami
    

    原片

  4. alice 使用者身分,使用 sudo useradd 指令新增 thirduser。如果出現提示,請提供 AB*gh246 的密碼。

    sudo useradd thirduser
    

    新增第三

  5. 確認已新增 thirduserls 指令會等到插入 sudo 並提供 alice 密碼時失敗。這會確認 alice 使用者具有 sudo 權限。

    grep thirduser /etc/passwd
    ls -la /home/thirduser
    sudo ls -la /home/thirduser
    

    確認第三

其他學習資源

探索 docs.oracle.com/learn 上的其他實驗室,或前往 Oracle Learning YouTube 通道存取更多免費學習內容。此外,請造訪 education.oracle.com/learning-explorer 以成為 Oracle Learning Explorer。

如需產品文件,請瀏覽 Oracle Help Center