使用者與組管理知識總結(一)
使用者與組管理知識原理
在linux裡系統管理與使用是以使用者為主體的,如果想使用或進入系統,就必須以某個系統裡已存在的使用者身份登入,並且通過密碼驗證,方可進入系統,進行操控。
每乙個合法的使用者都必須擁有賬號,賬號是一種用來記錄單個使用者後者多個使用者的資料。在linux上的賬號大致可以分為兩大類。
一、使用者賬號
用來儲存單一使用者的資料
2、組賬號
用來儲存多個使用者的資訊,每乙個組賬號可以用來記錄一組使用者的資料。
依照賬號的功能
不管是本機賬號還是網域賬號,我們都可以依照功能把它們分成兩類:使用者賬號和組賬號。
使用者賬號包含了超級使用者、普通使用者;而普通使用者還可以細分為系統使用者和真實使用者。
組賬號包含了超級使用者組、系統組及使用者自定義組。
使用者賬號
超級使用者
超級使用者即時超級使用者,在linux上擁有完整的控制權,可以執行和修改linux各種操作命令,超級使用者的使用者名稱通常為root,其uid一定為0.
注:linux是允許建立其他名稱的超級使用者,只要uid為0,linux系統就會視為超級使用者,而不去在乎你的使用者名稱是不是root。
普通使用者
除超級使用者外的其他使用者賬號,全部屬於普通使用者。
普通使用者賬號在linux下,行為能力將會受到限制,普通使用者要使用具有許可權的檔案,如果沒有超級使用者授予足夠的許可權,普通使用者是無法使用的,所以普通使用者不太容易對linux造成危害。linux可以建立4 294 967 295(4億多)個普通使用者賬號資料。
在普通使用者下還有兩種分類:
系統賬號
系統賬號使用者也成為偽使用者,這種帳號所對應的則是一些linux系統本身的軟體,在某些軟體程式執行的時候,需要你提供乙個普通使用者型別的帳號,為了滿足這些軟體而建立的帳號,就是系統帳號(偽使用者)。
真實使用者賬號
真實使用者賬號顧名思義,每乙個賬號對應的都是真實的人,裡面的資料內容都是人所建立修改的,真實使用者賬號在linux系統中,被分配的uid範圍在500~max之間,所以不會出現使用者上限的現象。
組賬號超級使用者組
在linux裡使用者裡有超級使用者,組裡也不例外,超級使用者組的名稱與超級使用者相同,也叫root,同時gid為0,但隸屬於超級使用者組的成員不會像超級使用者root一樣具有完全控制權,他們在呼叫檔案時也要看看是否有足夠的許可權才能呼叫。因為他們的uid不會是0。
注:使用者是uid,組是gid。
系統組與系統帳號一樣,系統組也是給linux系統本身的某個軟體使用。目前linux定義系統組的gid範圍在1~499之間,也就是說和系統帳號一樣,只可建立499個系統組。
使用者自定義組
使用者自定義組賬號可使用的gid與真實使用者賬號一樣多,至於怎麼分配這些組,叫什麼名稱,gid為多少等等,隨你高興。另外在使用者自定義組中還存在使用者私有組(乙個組裡就乙個使用者)。當你在建立新的使用者賬號時,系統會自動為你建立該使用者的私有組。
使用者帳號類容詳解
在linux本機裡,使用者帳號資料儲存在 /etc/passwd 和/etc/shadow檔案中。我們可以用 cat 命令來開啟passwd檔案,例:#cat /etc/passwd
(圖1)
請看圖1,圖1中紅色方框則是超級使用者他的uid和gid均為0,其餘使用者的uid和gid都在1~499範圍之內,所以都是系統使用者。
(圖2)
圖2中,xiaoming、xiaohong、xiaogang、三個帳號的uid和gid都是在500以上,所以他們是真實使用者。
/etc/passwd 中每一行代表乙個使用者的帳號資料,每個資料都以(冒號「:」)來分隔,一共分隔有7個字段。每個欄位名稱如下所示。
名稱 username: password: uid: gid: comment: homedirshell
對應 xiaohong: x : 501:
501: xiaohong: /home/xiaohong:
/bin/bash
username:使用者名稱,最長為32個字元,可包括大小寫英文本母、下劃線(_)、連線線(-)、阿拉伯數字。其中阿拉伯數字不能作為使用者名稱的第乙個字元。
除此之外盡量不要使用大寫英文本母。
password:儲存使用者的密碼資料,因為所有使用者都可以檢視 /etc/passwd 目錄下的內容,為了保護密碼安全,這個字段儲存的是加密後的密碼資料。這裡用x字元所表示,是因為該使用者的密碼被儲存到其他地方;如果這個欄位是空的,則代表該使用者不需要密碼就可以通過linux的驗證。
uid:uid是使用者識別符號(user id)的縮寫,uid範圍為0~4 294 967 295 之間的整數。
gid:gid是組識別符號(group id)的縮寫,gid範圍與uid一樣,為0~max(因為很大)之間的整數。
comment:主要用來記錄使用者的全名(full name)與其他批註資料,預設為與使用者名稱同樣的名稱。
homedir:這個字段記錄使用者登入系統後進入的第乙個目錄,也就是使用者的主目錄,也成為家目錄,所以欄位的路徑必須是對決路徑。
shell:儲存使用者登入系統後執行的shell(命令直譯器)。
先在我們在用cat命令來開啟/etc/shadow檔案,例:#cat /etc/shadow(如圖3)
(圖3)
shadow是passwd的影子檔案,該檔案只能由root使用者(超級使用者)讀取和操作。圖3是shadow檔案內容的一部分擷取。每一行對應著乙個使用者的資料,每行通過(冒號「;」)來進行分隔,每個字段各有不同的作用。
比例:root: $1$48ljd/ys$jy4qgxklgqvcv8tbobsht/: 15476: 0: 99999: 7
對應: 123 4 5 6 7 8 9
1、使用者名稱:用於和passwd檔案中的使用者記錄相對應。
2、加密後的口令:linux系統通過md5演算法加密後的使用者口令資訊
3、上次修改口令的時間:最近一次修改口令的時間與2023年1月1日的間隔天數。
4、兩次修改口令的間隔最大天數:制定使用者必須經過多少天後才能再次修改口令,如果該值設定為0,則禁用此功能。
5、兩次必須修改口令的間隔最大天數:指定口令在多少天後必須被修改。
6、在口令過期前多少天警告使用者:到達該時間後,使用者登入系統時將會被提示口令將要過期。
7、口令過期多少天後禁用該使用者:當使用者口令過期達到該時間限制後,系統將會禁用該使用者,使用者將無法再登入系統。
8、使用者過期日期:指定使用者自2023年1月1日以來被禁用的天數,如果這個欄位的值為空,則表示該使用者一直可用。
9、保留字段:目前並未使用。(可無視)
注:我們可以看出passwd檔案中password欄位中之所以畫 x 是因為所有密碼資料都存放在shadow這個檔案裡,所以passwd和shadow兩個檔案是互補的。當使用者登入系統的時候,系統首先會檢查/etc/passwd檔案,檢視賬戶是否存在,然後確定使用者的uid,通過uid確認身份,因為linux系統識別使用者主要是靠uid來識別,如果確認使用者存在後,則讀取/etc/shadow檔案中該使用者多對應的口令,如果驗證口令成功後,則允許使用者登入系統。
組帳號內容詳解
linux裡組帳號資料被儲存在/etc/group 和/etc/gshadow檔案中,我們依然可以使用 cat 命令來檢視它們。例:#cat /etc/group注:
只有超級使用者可以讀寫,普通使用者只能唯讀。(如圖3)
(圖4)
圖4裡,開頭第乙個通常都是超級使用者組,gid為0,其餘的只要gid在1~499之間,都屬於系統組。
(圖5)
圖5中紅框裡的3個帳號就屬於使用者自定義組,他們的gid都在500以上(包括500)
注:在linux系統裡,uid/gid才是系統識別的唯一,如果兩個帳號的uid相同,那系統為認為他們是同一使用者賬號,如gid相同,則識別他們為同一組帳號。這裡強烈建議讓每乙個使用者賬戶和組賬戶都有唯一的id號,避免造成賬號紊亂。
/etc/group檔案格式與passwd檔案類似,也是一行代表乙個組帳號資料,每一行中包含4個字段,每個字段同樣以(冒號「:」)分隔開,說明如下
名稱 groupname: password: gid: members:
對應 rootx0: root:
username:使用者名稱,用來表示使用者資料的識別名稱。
password:儲存使用者密碼資料,也就是組密碼,如果出現的是x,則代表該使用者的密碼被儲存到其他地方。(你懂得~)
gid:組識別符號,與uid一樣多。
members:這個字段儲存著組成員的清單,記錄著使用者帳號名稱。注:記錄的是使用者帳號名稱,而不是組名稱!
由於乙個組可以擁有多個成員,所以組成員之間用(逗號「,」)分隔開。(如圖6)
(圖6)
bin組下有3個成員,分別是 root bin daemon,它們都以「,」分隔。daemon 下和bin組下一樣。
注:乙個使用者可以加入不同的組,但乙個組不能擁有相同的使用者。
現在我們來看gshadow檔案,依然用cat命令檢視,例:#cat /etc/gshadow如(圖7)
(圖7)
這是gshadow檔案的乙個擷取,可以看出和shadow檔案沒有太大差距,它也是只能讓root(超級使用者)執行讀寫操作,gshadow檔案也是group的影子檔案,兩者之間是互補關係,其中使用者組的password
字段內容就寫在這裡。啟動過程與使用者內容一樣。每一行的資訊也是用(冒號「:」)來進行分隔的,共4個字段,說明如下
比例 root: : : root
對應 1 2 3 4
1、使用者組名稱:沒什麼好解釋的,就是組名
2、使用者組口令:使用者進行切換時驗證的口令,和shadow一樣,這裡也存放這group的密碼資料,但這個字段可以為空或者「!」
3、使用者組管理者:如果組有多個管理者,這裡用(逗號「,」)進行分隔。
實驗五Linux使用者和組的管理
一 ssh服務 設定一台主機作為ssh伺服器 將該機作為ssh服務的伺服器端並啟動ssh服務 將其服務埠改為1500 只允許ssh 2協議工作 準備連線的最大允許連線數為10。如圖5 1。圖5 1 說明 ssh伺服器的ip位址為172.16.100.218,客戶端位址為172.16.100.125。...
Linux實驗 使用者與組管理
實驗4 使用者與組的管理 實驗目的 1 掌握建立使用者和組群的命令 2 了解賬戶和組群的相關配置檔案 3 了解實現賬戶安全的知識 實驗材料 計算機 vmware虛擬機器 centos 一 實驗原理 1 使用者和組群賬戶管理相關命令 useradd,usermod,userdel,groupadd,g...
Linux管理檔案和目錄基本命令
touch 新建空檔案,當檔案存在時更新該檔案的時間標記,否則新建。file 檢視檔案型別。cp 複製檔案或目錄 引數 f force 覆蓋目標同名檔案或目錄時不進行提醒,強制複製。i interactive 覆蓋目標同名檔案或目錄時提醒使用者確認。p pereserve 複製是保持原檔案的許可權 ...