管理使用者群組
賬号概述
1、使用者賬号:
超級使用者:root使用者是linux系統中預設的超級使用者,對于本機擁有至高無上的權限。
普通使用者:普通使用者賬号需要由root使用者或其它管理者建立,擁有的權限受到一定的限制,一般普通使用者在自己的宿主目錄擁有完整的權限。
程式使用者:在安裝linux系統及部分應用程式時,會添加一些特定的底權限使用者賬号,這些使用者一般不允許登入系統,僅用于維護某個程式正常運作。
2、組賬号:
基于某種特定聯系将多個使用者集合在一起,即構成一個使用者組,用于表示該組内所有使用者的賬戶稱為組賬号。每個使用者至少屬于一個組,這個組稱為該使用者的基本組(或私有組),如果該使用者還屬于其他組。則這個組稱為該使用者的附加組(或公共組)。
3、UID和GID号
UID:linux系統中每個使用者都有一個數字形式的身份标記,稱為UID,roo賬戶UID固定為“0”,程式使用者UID預設為“1~499”,普通使用者UID預設為“500~60000”。
GID:linux系統中每個組賬号也有一個數字形式的身份标記,稱為GID,root組GID固定為“0”,程式組GID預設為“1~499”,普通組GID預設為“500~60000”。
使用者賬戶檔案管理
使用者的賬戶分别存放在“/etc/passwd”和“/etc/shadow”(shadow又稱影子檔案)這兩個檔案中。
如下:通過指令“cat /etc/passwd”指令檢視passwd檔案中的内容。
<a href="http://cshbk.blog.51cto.com/attachment/201304/20/5685776_1366464456FJkT.jpg"></a>
在passwd檔案中一共有七段,分别用“:”隔開。每段解釋如下:
第一段:使用者賬号的名稱,也就是使用者登入名。
第二段:經過加密的使用者密碼字串。(或者密碼站位符“x”)
第三段:使用者的UID号。
第四段:所屬基本組的GID号。
第五段:使用者全名,可填寫與使用者相關的說明資訊。
第六段:使用者的宿主目錄,普通使用者預設在“/home”下的同名目錄。
第七章:登入shell資訊,使用者登入後使用的shell。
如下:通過“cat /etc/shadow”指令檢視shadow檔案中的内容。在shadow檔案中儲存有各用賬号的密碼資訊,是以對shadow檔案通路有着嚴格的限制,預設隻root才能讀取檔案的内容,而且不能直接編輯檔案。
<a href="http://cshbk.blog.51cto.com/attachment/201304/20/5685776_1366464459eP4f.jpg"></a>
在shadow檔案中一共分為九段,也分别使用“:”隔開。每段解釋如下:
第一段:使用者賬号名号,也就是登入名。
第二段:使用MD5加密的密碼字串,當為“*”或“!!”時不能登入系統,當為空時,則不需要密碼就可登入系統。
第三段:上次密碼修改時間到現在的天數。
第四段:密碼的最短有效期,值為0時表示進行限制。
第五段:密碼的最長有效期,值為99999時表示不進行限制。
第六段:密碼過期時提前警告的天數,預設值為7天。
第七段:在密碼過期後多少天内禁用此使用者。
第八段:賬号的實效時間,值為空時表示永久有效。
第九段:保留字段,目前沒有待定用途。
使用者賬戶管理。
useradd指令——添加使用者賬戶
useradd [選項] [使用者名]
-u:指定使用者的UID号。
-d:指定使用者的宿主目錄位置。
-e:指定使用者的失效時間,使用YYYY-MM-DD格式。
-g:指定使用者的基本組。
-G:指定使用者的附加組。
-M:建立使用者時不建立宿主目錄。
-s:指定使用者的登入shell。
如下:建立使用者admin,指定宿主目錄在根目錄下,基本組為root組。并使用tail指令檢視建立的使用者。
<a href="http://cshbk.blog.51cto.com/attachment/201304/20/5685776_1366464461NOMA.jpg"></a>
passwd指令——為使用者賬戶設定密碼
passwd [選項] [使用者名]
-d:清空指定使用者的密碼,可以使用空密碼登入。
-l:鎖定使用者。
-S:檢視使用者的狀态(是否被鎖定)。
-u:解鎖使用者。
單獨使用passwd指令時隻能對目前使用者設定密碼,普通使用者使用passwd密令設定密碼時,必須輸入舊密碼,新密碼并且必須在六位以上。
如下:為剛才建立的使用者admin設定密碼。
<a href="http://cshbk.blog.51cto.com/attachment/201304/20/5685776_1366464462TLJh.jpg"></a>
usermod指令——修改使用者的屬性。
-u:修改使用者的UID号。
-d:修改使用者的宿主目錄位置。
-e:修改使用者的實效時間,使用YYYY-MM-DD的格式。
-g:修改使用者的基本組。
-G:修改使用者的附加組。
-M:不為使用者建立并初始化宿主目錄。
-l:更改使用者的登入名。
-L:鎖定使用者賬戶。
-U:解鎖使用者賬戶。
如下:使用usermod指令修改root的基本組,并将root的宿主目錄移到home目錄下(若要修改已有賬号的宿主目錄,需要先将原有的宿主目錄轉移到新的位置,然後再通過usermod指令設定新的宿主目錄位置。)。
<a href="http://cshbk.blog.51cto.com/attachment/201304/20/5685776_1366464462biOH.jpg"></a>
userdel指令——删除使用者賬戶。
userdel [選項] [使用者名]
-r:删除使用者時同時删除使用者的宿主目錄。
組賬戶管理
和使用者一樣,組賬戶也有兩個相關的配置檔案分别是“/etc/group”和“/etc/gshadow”。這兩個檔案内容和使用者檔案一樣基本相同,這裡就不在詳述了。
groupadd指令——建立組
groupadd [選項] [組名]
-g:指定組的GID号。
如下:建立benet組,指定GID号為200。
<a href="http://cshbk.blog.51cto.com/attachment/201304/20/5685776_1366464463CiVs.jpg"></a>
gpasswd指令——添加,設定,删除組成員
gpasswd [選項] [組]
-a:将指定使用者添加到指定組。
-d:删除指定用。
-M:批量添加使用者到指定組。
如下:将剛才建立的admin使用者加入到benet組中。
<a href="http://cshbk.blog.51cto.com/attachment/201304/20/5685776_13664644638T7R.jpg"></a>
groupdel指令——删除組
groupdel [組名]
查詢賬号資訊
groups指令——查詢使用者賬戶所屬的組
groups [使用者名]
如下:查詢剛才建立的admin使用者屬于那些組。
<a href="http://cshbk.blog.51cto.com/attachment/201304/20/5685776_1366464464uEqo.jpg"></a>
id指令——查詢使用者賬号的UID
id [使用者名]
finger指令——查詢使用者賬戶的登入屬性
finger [使用者名]
w指令——查詢目前主機的使用者登入情況(也可以使用user或who指令)
如下:使用w指令檢視目前系統中的使用者登入情況。
<a href="http://cshbk.blog.51cto.com/attachment/201304/20/5685776_1366464465PQi1.jpg"></a>
本文轉自yun5277 51CTO部落格,原文連結:http://blog.51cto.com/dengqi/1182256,如需轉載請自行聯系原作者