👨‍💻簡介

  • passwd
  • 用途:修改使用者密碼

語法

passwd [OPTIONS] username

參數

參數說明
-k, –keep-tokens保留未過期的驗證 token
-d, –delete刪除 named 帳號的密碼 (只有 root 可執行)
-l, –lock鎖住 named 帳號的密碼 (只有 root 可執行)
-u, –unlock解開 named 帳號的密碼鎖定 (只有 root 可執行)
-e, –expire讓 named 帳號的密碼過期 (只有 root 可執行)
-f, –force強制作業
-x, –maximum=DAYS最大密碼有效期限 (只有 root 可執行)
-n, –minimum=DAYS最小密碼有效期限 (只有 root 可執行)
-w, –warning=DAYS用戶在密碼過期前收到警告的天數 (只有root可執行)
-i, –inactive=DAYS帳號在密碼過期後即將被停用前的天數 (只有root可執行)
-S, –status回報 named 帳號上的密碼狀態 (只有 root 可執行)
–stdin由 stdin 讀取新的 token (只有 root 可執行)

基本操作

  1. 修改使用者密碼
passwd myuser
  1. 顯示使用者密碼狀態
passwd -S myuser

# output
myuser PS 2021-11-26 0 99999 7 -1
欄位範例
帳號名稱myuser
密碼狀態,狀態包含鎖定密碼(LK)、無密碼(NP)與可用密碼(PS)PS
上次修改密碼時間2021-11-26
密碼最短使用期限,單位為天0
密碼最長使用期限,單位為天99999
密碼過期前警告期間,單位為天7
密碼過期後可使用的期間,單位為天-1
  1. 刪除使用者密碼
passwd -d myuser
  1. 讓密碼過期,強制使用者更新密碼
passwd -e myuser

# 下次登入時,就會跳出通知說要更改密碼
You are required to change your password immediately (root enforced)
WARNING: Your password has expired.
You must change your password now and login again!
Changing password for user myuser.
Changing password for myuser.
(current) UNIX password:
  1. 鎖定與解鎖使用者密碼
passwd -l myuser

此指令會使/etc/shadow的使用者密碼欄位前面多了!!

該狀態下使用者無法變更帳號密碼

要解除鎖定可用-u

passwd -u myuser
  1. 設定密碼期限
# 至少五天才能改一次密碼
passwd -n 5 myuser

# 密碼最多只能用30天
passwd -x 30 myuser

# 快過期前7天送警告
passwd -w 7 myuser

# 寬限期設定,超過5天將無法再登入
passwd -i 5 myuser

參考資料