取得密碼過期時間

取得密碼過期時間

讓我先這樣說:我願意不是具有可用的 root 存取權限。

我最近被鎖定了我的帳戶,因為我不知道密碼即將到期,然後就過去了。我想在我的啟動腳本中新增一個檢查,以檢查並顯示時間,以便我知道時間即將到來。

有沒有指令或方法可以取得我的使用者密碼過期時的時間戳記?

答案1

您應該能夠從chage實用程式獲取該資訊。不需要 root 即可在清單模式下運作。

注意:這很可能僅適用於passwd基於本機的身份驗證。我不知道是否可以使其與不將登入資訊放入passwd/文件的身份驗證模式一起使用shadow。我猜這些解決方案提供了自己的工具,但不了解它們。

$ chage -l test                       
Last password change                                : Apr 17, 2012
Password expires                                    : Apr 27, 2012
Password inactive                                   : never
Account expires                                     : May 20, 2012
Minimum number of days between password change      : 0
Maximum number of days between password change      : 10
Number of days of warning before password expires   : 7

我使用它與快速 awk 一起在登入時顯示我的密碼到期日期。

答案2

在 ldap 中你會做類似的事情:

ldapsearch -x -Z  uid=$1 pwdChangedTime | \
          grep -vE '^#|^$' | grep pwdChangedTime | awk '{print $2}'

答案3

chage可以進行多項更改並可以了解登錄詳細信息,如下所示...

Usage: chage [options] [LOGIN]

Options:
  -d, --lastday LAST_DAY        set date of last password change to LAST_DAY
  -E, --expiredate EXPIRE_DATE  set account expiration date to EXPIRE_DATE
  -h, --help                    display this help message and exit
  -I, --inactive INACTIVE       set password inactive after expiration
                                to INACTIVE
  -l, --list                    show account aging information
  -m, --mindays MIN_DAYS        set minimum number of days before password
                                change to MIN_DAYS
  -M, --maxdays MAX_DAYS        set maximim number of days before password
                                change to MAX_DAYS
  -W, --warndays WARN_DAYS      set expiration warning days to WARN_DAYS

如果您有 Root 存取權限,則可以變更密碼過期時間,只需編輯..

vim /etc/login.defs

只需設定下面的值...

PASS_MAX_DAYS 30
PASS_MIN_DAYS 1
PASS_WARN_AGE 7

它可能對你有幫助

相關內容