1. 程式人生 > >Linux 使用者和使用者組管理 ,user* ,passwd , group*未寫完

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 講解:該目錄儲存的是作業系統使用者資訊,該檔案為所有使用者可見
    [
    [email protected]
    ~]# cat /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:66NcuuK4wOoORBoPCB$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。 .