簡介

  1. 帳號與 ID
    1. 帳號 ID:使用者的 ID(User ID, UID) 與群組的 ID(Group ID, GID)
    2. Linux 主機只認識 UID 及 GID,不認識我們輸入的帳號名稱。
    3. /etc/passwd 及 /etc/group 分別記錄 UID 及 GID 的對應。
  2. 如何登入 Linux 主機?(系統必須讀取 /etc/passwd 與 /etc/shadow)
    1. 先找尋 /etc/passwd 裡面是否有這個帳號?
      1. 如果沒有則跳出,
      2. 如果有則將該帳號對應的 UID 與 GID 讀出,該帳號的家目錄與 shell 設定也一併讀出;
    2. 核對密碼表:核對輸入的密碼與 /etc/shadow 對應的帳號與 UID 之密碼是否相符?
    3. 如果一切正確,就進入 Shell 控管的階段。
  3. /etc/passwd 每一行一個帳號,以『:』分隔成七個欄位。
    [root@kvm8 ~]# head /etc/passwd
    root:x:0:0:Super User:/root:/bin/bash
    bin:x:1:1:bin:/bin:/usr/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/usr/sbin/nologin
    adm:x:3:4:adm:/var/adm:/usr/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/usr/sbin/nologin
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    halt:x:7:0:halt:/sbin:/sbin/halt
    mail:x:8:12:mail:/var/spool/mail:/usr/sbin/nologin
    operator:x:11:0:operator:/root:/usr/sbin/nologin
    
  4. /etc/passwd 七個欄位,以 root 為例。
    1. 帳號名稱:root
    2. 密碼:x ,密碼雜湊存在 /etc/shadow
    3. UID:0
      ID 範圍 該 ID 使用者特性
      0 系統管理員,只要將 UID 改為 0 即可成為系統管理員。
      0 ~ 99 保留給系統使用
      100 ~ 999 保留給應用程式使用。
      1000 ~ 65535 一般使用者的 UID 從 1000 編起。
    4. 用戶所屬主要群組的 GID:0,群組名稱存在 /etc/group。
    5. 備註說明:Super User
    6. 用戶家目錄:/root
    7. 登入使用的 Shell:/bin/bash