Linux 使用者和使用者組管理 ,user* ,passwd , group*未寫完
1,Linux 使用者和使用者組管理
Linux系統是一個多使用者多工的分時作業系統,任何一個要使用系統資源的使用者,都必須首先向系統管理員申請一個賬號,然後以這個賬號的身份進入系統。
使用者的賬號作用:
一方面可以幫助系統管理員對使用系統的使用者進行跟蹤,並控制他們對系統資源(檔案)的訪問; rwx rwx r-- root root
另一方面也可以幫助使用者組織檔案,併為使用者提供安全性保護。。。
實現使用者賬號的管理,要完成的工作主要有如下幾個方面:
*
使用者賬號的新增、刪除與修改。
*
使用者口令的管理。
*
使用者組的管理。
使用者和組的關係:
使用者屬於組,一個使用者可以屬於多個組。
2, Linux環境下的賬戶系統檔案主要在以下4個檔案裡。
1 , /etc/passwd, 該目錄儲存的是作業系統使用者資訊,該檔案為所有使用者可見
2, /etc/shadow, 括使用者及被加密的密碼以及其它/etc/passwd ,不能包括的資訊,比如使用者的有效期限等;這個檔案只有root許可權可以讀取和操作,
組:
3, /etc/group , 內容包括使用者組(Group)、使用者組口令、GID及該使用者組所包含的使用者(User),每個使用者組一條記錄;
4, /etc/gshadow 是/etc/group的加密資訊檔案,比如使用者組(Group)管理密碼就是存放在這個檔案。
知識點補充:
pwconv命令 用於開啟使用者的投影密碼。
Linux系統裡的使用者和群組密碼,分別存放在名稱為passwd和group的檔案中,這兩個檔案位於/etc目錄下。因系統運作所需,任何人都得以讀取它們,造成安全上的破綻。
投影密碼將檔案內的密碼改存在/etc目錄下的shadow和gshadow檔案內,只允許系統管理者讀取,同時把原密碼置換為"x"字元,有效的強化了系統的安全性。
grpconv 命令 用於開啟使用者組的投影密碼。
用法: 直接編輯 /etc/passwd 新增使用者之後。使用 pwconv命令 可以在/etc/shadow, 同步使用者。
- 一、使用者名稱檔案/etc/passwd 講解:該目錄儲存的是作業系統使用者資訊,該檔案為所有使用者可見
[
root❌0:0:root:/root:/bin/bash
bin❌1:1:bin:/bin:/sbin/nologin
daemon❌2:2:daemon:/sbin:/sbin/nologin
adm❌3:4:adm:/var/adm:/sbin/nologin
lp❌4:7:lp:/var/spool/lpd:/sbin/nologin
1,root
2, x
3, 0
4, 0
5,root
6, /root
7,/bin/bash
共7部分
1,使用者名稱。
2,存放的是該帳號的口令,(密碼)現存於/etc/shadpw/,所以現在用X表示。
3,代表使用者標示號, uid 。 ( 當我們登入主機,輸入帳號時,Linux識別的是一組數字,也就是uid,帳號的作用是為了人們的方便記憶), 系統保留1-1000 , root使用者和偽裝使用者,1000以上為普通使用者。
4,組 標示號,gid,。 系統保留1-1000 , root使用者和偽裝使用者組,1000以上為普通使用者組。
5, 使用者名稱全稱,這是可選的,可以不設定
6,使用者的家目錄。
7,使用者的shell。
(sbin/nologin 不能登陸 /bin/bash)
/etc/login.defs 檢視uid ,gid 範圍。
id 命令, 檢視 使用者 id
- 二、密碼檔案 /etc/shadow
- /etc/passwd 和/etc/shadow 檔案是互補的,
/etc/shadow 是/etc/passwd的影子檔案,檔案中的 記錄行 與/etc/passwd中的一一對應,它由 pwconv 命令根據 /etc/passwd 中的資料自動產生。
它的檔案格式與/etc/passwd類似,由若干個欄位組成,欄位之間用“:”隔開,檔案的每行是8個冒號分割的9個域。
root:NcuuK4wOoORBoPCB$RNbrUDq/zeQXsl3wkOSElrCMoQw2UpaFM6B6OwEEHj49PuND5GEu/7YuW/6YrNWeZcpr0lxV3MccWChfD7fkg0::0:99999:7:::
bin::17632:0:99999:7:::
daemon::17632:0:99999:7:::
adm:*:17632:0:99999:7:::
共9個欄位
1,使用者名稱。
2,使用者密碼。(加密了)
3,從1970年1月1日 到 上次更改密碼的時間。 17090天
4,要過多少天才可以更改密碼。預設是0.即不限制.
5,密碼多少天后到期。即 在多少天內必須更改密碼。預設9999
6,密碼到期前的預警。設定為7,即密碼到期前7天時發出警告。
7,在口令過期之後多少天 禁用此使用者;
8,賬號的生命週期。 如果這個欄位的值為空,帳號永久可用;
9,作為保留,沒什麼意義。
知識點補充:
1971年底出版的《Unix Programmer’s Manual》裡定義的 Unix Time 是以 1971年1月1日00:00:00 作為起始時間, Unix 時間戳是一種時間表示方式,定義為從格林尼治時間 1970年01月01日 00時00分00秒 起至現在的總秒數,不考慮閏秒。
linux作業系統上的使用者如果需要登入主機,當其輸入使用者名稱和密碼之後,
首先在/etc/passwd檔案中查詢是否有你的賬號,如果沒有無法登入,如果有的話將該使用者的UID和GID讀出來,此外將此使用者的shell設定也一併讀出。
然後根據UID到/etc/shadow檔案中去尋找相應使用者的密碼,如果匹配一致
進入shell控制的階段
- 三、使用者命令講解: useradd , userdel , usermode
- 1, useradd 命令:
選項:
-c<備註>:加上備註文字。備註文字會儲存在passwd的備註欄位中;
-d<登入目錄>:指定使用者登入時的啟始目錄;(指定家目錄)
-g<群組>:指定使用者所屬的群組;
-G<群組>:指定使用者所屬的附加群組;
-m:自動建立使用者的登入目錄; (/home/user)
-M:不要自動建立使用者的登入目錄;
-n:取消 建立以使用者名稱稱為名的群組; ueradd test --------- test 屬組 會自動被建立。
-r:建立系統帳號;
-s:指定使用者登入後所使用的shell; /bin/bash
-u:指定使用者id。 .