Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

CentOS 賬戶管理完全指南:/etc/passwd、/etc/shadow 深度解析與實操技巧

編輯:關於 Linux

身為 Linux 系統管理員,帳號與群組管理是核心基本功。CentOS 採用標準的 Linux 權限模型:每個檔案擁有「擁有者權限」、「群組權限」與「其他人權限」三類;帳號與群組呈現多對多關係——一個帳號可屬於多個群組,一個群組可包含多個帳號;但每個已登入帳號同一時間僅有一個「有效群組」(初始群組),可透過 newgrp 指令切換。

核心設定檔一覽

  • /etc/passwd:帳號基本資訊
  • /etc/shadow:加密密碼與有效期設定
  • /etc/group:群組資訊
  • /etc/gshadow:群組密碼(較少使用)

/etc/passwd 欄位詳細解析

每行代表一個帳號,以冒號 : 分隔 7 個欄位:

欄位說明相關指令
1. 帳號名登入名稱usermod -l
2. 密碼佔位固定為 x,實際密碼在 /etc/shadow—
3. UID使用者唯一識別碼useradd -u, usermod -u
4. GID初始群組 ID,對應 /etc/group 第 3 欄useradd -g, usermod -g
5. 描述備註資訊(如全名、電話)useradd -c, usermod -c
6. 家目錄絕對路徑useradd -d, usermod -d
7. Shell預設登入 Shell,/sbin/nologin 即禁用登入useradd -s, usermod -s, chsh -l 查詢可用 Shell

/etc/shadow 密碼與有效期欄位深度解析

每行對應一個帳號的密碼策略,共 9 個欄位:

欄位說明相關指令
1. 帳號名關聯 /etc/passwd 第 1 欄—
2. 加密密碼SHA-512 等演算法產生,!! 代表鎖定passwd, usermod -L/-U, passwd -l/-u
3. 最後修改日自 1970-01-01 起的天數chage -d
4. 最短使用天數0 代表無限制passwd -n, chage -m
5. 最長使用天數99999 代表永不過期passwd -x, chage -M
6. 警告天數過期前幾天開始提醒passwd -w, chage -W
7. 寬限天數過期後仍可登入修改密碼的天數usermod -f, passwd -i, chage -I
8. 失效日期自 1970-01-01 起天數,過期則完全無法登入usermod -e, chage -E
9. 保留欄位暫無用途—

實務管理指令速查

  • 新增帳號:useradd -u UID -g GID -c "描述" -d /home/user -s /bin/bash username
  • 修改密碼:passwd username
  • 鎖定/解鎖帳號:passwd -l username / passwd -u username
  • 設定密碼有效期:chage -M 90 -W 7 username(90 天過期,提前 7 天警告)
  • 查看帳號詳細資訊:chage -l username
  • 群組管理:groupadd, groupmod, groupdel, gpasswd

最佳實踐建議

  1. 定期檢視 /etc/shadow 確保無異常帳號(如密碼欄位為 !! 或空值)
  2. 建立帳號時務必設定合理的密碼策略(chage)
  3. 系統帳號(UID < 1000)一律設定 /sbin/nologin Shell
  4. 重要帳號啟用雙因子認證或 SSH 金鑰登入,禁用密碼登入
  5. 定期審計 /etc/passwd 與 /etc/group 一致性

上一頁 1 2 3 下一頁 共 3 頁

Copyright © Windows教程網 All Rights Reserved