作用:passwd主要用來修改用戶的登錄密碼
用法: passwd [選項...] <帳號名稱>
主要選項:
-k, --keep-tokens 保持身份驗證令牌不過期
-d, --delete 刪除已命名帳號的密碼(只有 root 用戶才能進行此操作)
-l, --lock 鎖定指名帳戶的密碼(僅限 root 用戶)
-u, --unlock 解鎖指名賬戶的密碼(僅限 root 用戶)
-e, --expire 終止指名帳戶的密碼(僅限 root 用戶)
-f, --force 強制執行操作
-x, --maximum=DAYS 密碼的最長有效時限(只有 root 用戶才能進行此操作)
-n, --minimum=DAYS 密碼的最短有效時限(只有 root 用戶才能進行此操作)
-w, --warning=DAYS 在密碼過期前多少天開始提醒用戶(只有root 用戶才能進行此操作)
-i, --inactive=DAYS 當密碼過期后經過多少天該帳號會被禁用(只有 root 用戶才能進行此操作)
-S, --status 報告已命名帳號的密碼狀態(只有 root 用戶才能進行此操作)
--stdin 從標准輸入讀取令牌(只有 root 用戶才能進行此操作)
Help options:
-?, --help Show this help message
--usage Display brief usage message
🔴應用實例
(1)修改當前用戶密碼
如果修改當前用戶密碼,在可以直接使用 passwd 命令,普通用戶會要求輸入原密碼,密碼長度不少於8個字符,root 用戶可以無視則不需要輸入原密碼,密碼長度及時不合規范也可以正常更新密碼,但生產環境還是建議密碼要符合復雜性要求。
# passwd
更改用戶 root 的密碼 。
新的 密碼:
無效的密碼: 密碼少於 8 個字符
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。
(2)位用戶指定空密碼
如下命令可以將用戶user01的密碼刪除,在該用戶下次登錄時,系統將不再詢問密碼:
# passwd -d user01
(3)臨時說的一個用戶登錄
某些時候需要讓一個用戶臨時不能登錄,此時可以使用如下命令鎖定用戶密碼(只有 root 權限才可以使用此選項):
# passwd -l user01
(4)解鎖用戶密碼
恢復鎖定用戶的登錄權限,可使用如下命令解鎖密碼鎖定(只有 root 權限才可以使用此選項):
passwd -u user01
鎖定賬戶使用戶無法登錄除了用passwd命令可使用usermod命令,只不過usermod命令鎖定的是賬戶而不是密碼。
(5)非交互式修改密碼
直接使用passwd命令加用戶名修改密碼是交互式的,如果希望一條命令就可以更新賬戶密碼可以用如下命令:
# echo 'iejfow@' | passwd --stdin user01
chpasswd 命令更新賬戶密碼
# echo user01:'iejfow@' | chpasswd
執行以上兩種非交互更新賬號密碼的命令,密碼會暴露在history記錄中,這是一個風險點。