︿
Top

Lab 1. 建立新的 User Account 及 Group

此次實作為透過相關指令 (useradd、groupadd) 建立使用者帳號及群組。


useradd weithenn                               //建立使用者帳號 weithenn
echo "password" | passwd --stdin weithenn  //密碼password餵給使用者weithenn(不用輸入二次)
groupadd –g 200 mis                           //建立群組 MIS 並指定其 GID 為 200

如何為使用者帳號指定 Primary / Second Group?
  • 使用指令 vipw 去修改使用者的 GID 欄位即為指定使用者帳號的 Primary Group
  • 使用指令 vi 去修改郡組檔案 /etc/group 即為指定使用者帳號的 Second Group

修改完畢後使用指令 id 即可知道使用者的 Primary / Second Group 為何,如下例使用者帳號 weithenn 其 Primary Group 為 MIS 而 Second Group 為 HR。
id weithenn                            
 uid=501(weithenn) gid=501(mis) groups=501(mis),200(hr) context=system_u:system_r:initrc_t




Lab 2. 設定分享資料夾權限 (建立檔案時群組參照上層設定)

設定分享資料夾權限,因為預設的檔案權限只有 Owner、Group、Other 三種,這樣的權限設定無法符合一般企業複雜的存取關系,此次實作為透過設定 SUID、SGID、Sticky 來達成權限設定多樣化。
  • SUID: 暫時得到 Owner Permission (ex. passwd command)。
  • SGID: 建立資料夾及檔案時其 Group 權限會參照上(父)層設定。
  • Sticky: 使用者僅能針對自已建立的 Folder 及 File 進行修改。
chgrp mis /depts/mis     //設定資料夾的 Group 為 MIS
chmod 2770 /depts/mis    //設定資料夾權限為 2770 (SGID)
su – weithenn             //切換成 weithenn 及 chris 使用者帳號去建立檔案
ll                          //可發現使用者所新建立的檔案會參照上層設定 (Group 為 MIS)
 -rw-rw-r-- 1 weithenn     mis 0 Dec 26 14:47 weithenn
 -rw-rw-r-- 1 chris        mis 0 Dec 26 14:48 chris


在上例中若設定 2770 (GUID) 及 3770 (Sticky + SGID) 會有什麼不同的效果?
  • 2770 (GUID): 使用者新建立的檔案及資料夾其群組皆為 MIS,使用者 weithenn 及 chris 可 互相刪除對方建立的檔案及資料夾。
  • 3770 (Sticky + SGID): 使用者新建立的檔案及資料夾其群組皆為 MIS,使用者 weithenn 及 chris 無法 互相刪除對方建立檔案及資料夾 (但可讀寫),使用者僅 能對自已建立的檔案或資料夾進行刪除動作。
文章標籤: