Linux系列教程(十四)——Linux用戶和用戶組管理之相關配置文件


  前面我們介紹了軟件包管理。首先介紹了rpm包的相關命令,但是我們發現直接安裝rpm包會被其依賴性折磨的不行,然后解決辦法是yum在線管理,通過yum命令安裝rpm包能自動幫助我們解決依賴性。最后又介紹了源碼包和腳本安裝包,源碼包和前面講的RPM包安裝相比是比較麻煩的,而且重點介紹了源碼包和rpm包由於安裝位置的不同造成后面啟動相關服務的方法的區別。腳本安裝包其實就是人為的修改源碼包,使其成為一個自動安裝的腳本,安裝過程簡單。那么軟件包的介紹就結束了,本篇博客我們將學習用戶管理。

  學習用戶管理之前,我們要知道越是對安全性高的服務器,越需要建立合理的用戶權限等級制度和服務器操作規范,而在Linux系統中主要是通過用戶配置文件來查看和修改用戶信息的。所以在講解用戶管理之前我們先講講用戶配置文件。

 

1、用戶信息文件:/etc/passwd

  我們通過 vim /etc/passwd 命令,打開 passwd 文件:

  

  上面的每一行代表一個用戶,我們以第一行為例:

root:x:0:0:root:/root:/bin/bash

  上面的root用戶通過 : 分隔為 7 個字段。

  ①、第一個字段:root 表示用戶名稱

  ②、第二個字段:x  表示密碼標志,真正的密碼是存儲在 /etc/shadow 文件中,下面我們會詳細講解。

  ③、第三個字段:UID,用戶ID。這里我們需要說明的是在Linux系統中不一定root用戶是超級用戶,用戶id為0的才是超級用戶。

        0:表示超級用戶,權限最大的用戶。

        1-499:表示系統用戶(偽用戶),偽用戶是系統用來啟動相關服務和命令的,不能用來登錄系統,而且不能刪除,刪除偽用戶會造成一些命令不能使用。

        500-65535:普通用戶。Linux內核2.6以后是可以支持232個用戶,基本上是不用擔心用戶不夠的。

  ④、第四個字段:GID,用戶初始組ID。這里需要理解初始組和用戶組的概念,初始組就是指用戶一登錄就立刻擁有這個用戶組的相關權限,每個用戶的初始組只能有一個,一般就是和這個用戶的用戶組相同的組名作為這個用戶的初始組。附加組值用戶可以加入多個其他的用戶組,並擁有這些組的權限,附加組可以有多個。

  ⑤、第五個字段:用戶說明

  ⑥、第六個字段:家目錄。

        普通用戶:/home/用戶名/

        超級用戶:/root/

  ⑦、第七個字段:登錄之后的 shell。shell后面我們會詳細介紹,這里簡單來說shell就是Linux的命令解釋器。

  

2、用戶密碼文件:/etc/shadow 

  我們通過 vim /etc/shadow 命令,打開 shadow文件:

  

  同理上面的每一行和 passwd 文件一樣,都是表示一個用戶。passwd描述的是用戶信息,shadow文件描述的是用戶密碼。我們還是以第一行為例:

root:$6$bo3LXGTQ8SwsRa6J$.7qTM2GT8EmA8YSkHtIqlVefcUyOTdv3EBwJLA32U0qL/YHIOe0SQiacsNq4tSAN2zVbp0bvlOFP.sK0euPIg/:17324:0:99999:7:::

  上面的root用戶通過 : 分隔為 9 個字段。

  ①、第一個字段:root 表示用戶名

  ②、第二個字段:root用戶的登錄加密密碼。

      一、加密算法升級為 SHA512 散列加密算法

      二、如果密碼位是“!!”或者“*”代表沒有密碼,不能登錄,基本上偽用戶都是沒有密碼的

  ③、第三個字段:密碼的最后一次修改日期。使用1970年1月1日作為標准時間,每過一天時間戳加1.

      root 用戶的修改日期是17324。這里我們通過 date -d "1970-01-01 17324 days"進行換算:

    

  ④、第四個字段:兩次密碼的修改間隔時間(和第三字段相比)

  ⑤、第五個字段:密碼有效期(和第三字段相比)

  ⑥、第六個字段:密碼修改到期前的警告天數(和第五個字段進行比較)

  ⑦、第七個字段:密碼過期后的寬限天數(和第五個字段進行比較)

        0:代表密碼過期后立即失效

        -1:代表密碼永遠不會失效

  ⑧、第八個字段:賬號失效時間(要用時間戳表示)

  ⑨、第九個字段:保留字段

3、用戶組信息文件:/etc/group

  我們通過 vim /etc/group 命令,打開 group文件:

  

  一般創建一個用戶,立即創建一個和用戶名相同的用戶組,我們還是以第一行 root 為例:

root:x:0:

  ①、第一個字段:組名

  ②、第二個字段:組密碼標志,密碼文件存放在 /etc/gshadow 中

  ③、第三個字段:GID,組id

  ④、第四個字段:組中的附加用戶

 

4、用戶組密碼文件:/etc/gshadow 

  

  這個文件基本上不會用到

  ①、第一個字段:組名

  ②、第二個字段:組密碼

  ③、第三個字段:組管理員用戶名

  ④、第四個字段:組中的附加用戶

 

5、用戶的家目錄

  ①、普通用戶:/home/用戶名/,一般創建一個新用戶就會自動創建該家目錄。所有者和所屬組都是此用戶,權限是700。

  ②、超級用戶:/root/,所有者和所屬組都是root用戶,權限是550。注意看上去權限是550,其實權限對於超級用戶基本上是沒有限制的,所以這里給什么權限都沒多大區別。

 

6、用戶的郵箱

  目錄是:

/var/spool/mail/用戶名/

  

7、用戶的模板目錄

  目錄是:

/etc/skel

  這個目錄是每創建一個新用戶,就會在其家目錄下自動創建 /etc/skel 目錄下的所有文件。

  范例:我們在 /etc/skel 目錄下創建一個 hello 文件,然后創建一個新用戶 test,進入到 test 用戶的家目錄/home/test 就會看到有 hello 文件。

  

8、總結

  本篇博客我們介紹了用戶管理的相關配置文件,包括用戶信息文件/etc/passwd,用戶密碼文件/etc/shadow;然后介紹了用戶組信息文件/etc/group,用戶組密碼文件/etc/gshadow。用戶的家目錄,以及用戶的模板目錄,這些我們需要了解即可,下一篇博客我們將學習用戶管理的相關命令。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM