Linux 最重要的一環,便是權限管理,完好的權限管理可以避免”使用者”與”使用者”間誤觸個人檔案或被蓄意更動,權限密切關西到隱私與個人權利,當然密碼防護也相當重要,每個使用者有屬於自己的密碼來表示自己的身分,為了方便管理眾多使用者的伺服器或個人電腦,群組權限管理也是相當重要的,本次作業內容正是管理使用者群主及權限。
作業內容:
1. 請問在 Fedora 下該如何新增一個使用者 lin、johnson、mary,密碼均是 ”ilovestustcsie” 且使用期限至 2016-5-30,並請新增 stust、csie、ee 三個群組,並將 lin、johnson、mary 加入到 stust 的群組,將 johnson 加入到 ee 的群組,將 lin、mary 加入到 csie 的群組?
2. 假設你的帳號是 root,請在 /tmp下建構一個檔案 test 內容是你的姓名及學號,此檔案的權限如下:
- r w - - - - - - -. johnson stust 10 Oct 30 14:34 test
3. 如果在examdir目錄下有兩個檔案,權限分別如下:
– r w – r – x r w –. lin stust 11 Nov 30 12:34 quiza – r – – – – – – w x. mary ee 12 Oct 35 14:39 quizb – r – x – – – – w x. johnson csie 1 Oct 4135 14:39 quizc
(a). 請說明 lin、johnson、mary 誰可以看檔案 quiza?
(b). 請說明 lin、johnson、mary 誰可以寫檔案 quizb?
(c). 請說明 lin、johnson、mary 誰可以執行檔案 quizc?
4. 請完成上面答案,並將所有執行過程貼在報告上。
1.使用者及群組管理
首先看老師的出題,一大團字就覺得頭暈目眩,於是我們稍稍整理過後就會變成清楚又明瞭的圖表,且還可以大幅降低錯設機率。
User Group Password Active lin stust、csie ilovestustcsie 2016-5-30 johnson stust、ee ilovestustcsie 2016-5-30 mary stust、csie ilovestustcsie 2016-5-30
創建使用者
這邊需要使用到 創建使用者 & 變更密碼指令 “useradd [UserName]” & “passwd [UserName]”。
設定帳戶過期時間
如果要創建有時效性的帳戶,可以透過指令下列指令來進行變更使用者帳戶及密碼的有效時間。
chage [-l|d|E|I|m|M|W] [UserName]
參數
-l :列出使用者帳戶及密碼有效資訊。
-d :修改最近一次更改密碼的日期,格式 YYYY-MM-DD。
-E :設定帳戶失效日期,格式 YYYY-MM-DD。
-I :帳戶密碼的失效日期,格式 DD。
-m :密碼最短保留天數,格式DD。
-M :密碼多久需要進行變更,格式DD。
-W :密碼過期前警告日期,格式DD。
創建群組
groupadd [GroupName]
使用者群組管理
以管理者(Root)手動設定使用者群組,可以透過下列指令
usermod -G [GroupName1,GroupName2...] [UserName]
2.變更檔案所有人及群組
題目要求在路徑 /tmp 下建立檔案 test,其內容為姓名及學號,所以先 cd 到 /tmp 目錄下接著 “touch [test]”,就可以創建檔案了,但由於必須編輯檔案內容,所以在此直接使用 “vim test” 來創建並編輯 test 檔案。
變更檔案持有人及持有群組
透過指令 “ll” 來瀏覽檔案創建狀況,並使用下列指令來變更持有人及群組。
chown [持有人]:[持有群組] [FileName]
-rw-r--r--. 1 root root 23 3M 31 23:37 test //可見更變如下 -rw-r--r--. 1 johnson stust 23 3M 31 23:37 test
3.權限測試
在這裡並沒有說要創建資料夾與檔案,只要說明三個不同權限配置的檔案,對於三個使用者來說誰有權力讀、寫、執行。
建置環境
驗證問題
當建置好環境之後,可以使用不同的使用者來進行帳戶存取驗證,此問題就可以輕鬆回答,當然這是在觀念還未建立好的狀況下,如果對 Linux 權限管理已經有一定的概念,此問題不用實際操作也可以輕易回答。
(a). 請說明lin、johnson、mary誰可以看檔案quiza?
(b). 請說明lin、johnson、mary誰可以寫檔案quizb?
(c). 請說明lin、johnson、mary誰可以執行檔案quizc?