如何在Linux中強制使用者在下一次登入時更改密碼?
在網路安全領域,強制執行密碼策略是保護您的Linux系統免受未授權訪問的必不可少的安全措施。在Linux中,要求使用者頻繁更改密碼是提高系統安全性的有效方法。
確保Linux系統的安全對於系統管理員至關重要,而實現這一目標的有效方法之一是實施安全措施,強制使用者定期更改密碼。本文旨在指導如何在Linux系統上強制使用者在下一次登入時更改密碼。
本文將介紹兩種方法,可用於強制使用者在下一次登入Linux時修改其密碼。透過使用這些方法,您可以確保系統使用者始終使用安全的密碼,從而降低安全漏洞的可能性。
在Linux中,強制使用者在下一次登入時更改密碼有兩種方法:
方法一:使用passwd命令
步驟1 − 開啟終端並以root使用者身份登入,或使用sudo獲得root許可權。
要使用passwd命令使使用者的密碼過期,您需要擁有root許可權。這可以透過以root使用者身份登入或使用sudo命令獲得臨時root許可權來實現。
步驟2 − 鍵入以下命令:−
passwd --expire username
Linux中的passwd命令是一個允許使用者更改其帳戶密碼的工具。但是,可以使用“--expire”選項強制使用者在下一次登入時更改密碼。要使用此選項,請將“username”替換為您要使密碼過期的使用者的名稱。
例如,假設我們要使使用者“robin”的密碼過期。我們將使用以下命令:
示例
passwd --expire robin
此命令會將使用者“robin”的密碼過期時間設定為0,這意味著密碼已過期,使用者將在下次登入時被提示更改密碼。
步驟3 − 當用戶再次嘗試登入時,將提示他們輸入新密碼。
一旦使用者“robin”再次嘗試登入,系統將提示他們輸入新密碼。密碼可以是字母、數字和特殊字元的任意組合,只要它滿足系統管理員設定的密碼複雜性要求即可。
輸出
[root@localhost ~]# passwd --expire robin passwd: password expiry information changed. [root@localhost ~]# su - robin Changing password for user robin. New password: Retype new password: passwd: all authentication tokens updated successfully. [robin@localhost ~]$ In the above example, we first logged in as the root user, then used the "passwd --expire robin" command to expire the password for the user "robin". When "robin" tried to log in again, he was prompted to enter a new password. The output shows that the password was successfully changed.
需要注意的是,使使用者的密碼過期是一種臨時措施,應配合定期更改密碼以確保使用者帳戶的安全。
方法二:使用chage命令
chage命令用於修改使用者帳戶的密碼過期資訊。此命令允許管理員指定使用者密碼的過期時間,並強制使用者在下一次登入時更改密碼。以下是它的使用方法:
步驟1 − 開啟終端並以root使用者身份登入,或使用sudo獲得root許可權。
在您可以使用chage命令修改使用者密碼過期資訊之前,您需要以root使用者身份登入或擁有root許可權。這可以透過開啟終端並使用su或sudo命令來實現。
步驟2 − 使用chage命令修改使用者帳戶的密碼過期資訊。
要修改使用者帳戶的密碼過期資訊並在其下次登入時強制立即更改密碼,可以使用chage命令。此命令允許管理員將使用者的密碼設定為立即過期,從而提示他們在下次登入時更改密碼。以下是如何實現此目的的示例命令。
示例
chage --lastday 0 username
輸出
[root@localhost ~]# chage --lastday 0 jane Changing the last password change time for jane New expiration date is Mar 05, 2023
要使用chage命令修改特定使用者帳戶的密碼過期資訊,您需要將“username”替換為您要使密碼過期的使用者的實際名稱。當您使用chage命令更改使用者的密碼過期時間時,您可以新增名為“--lastday 0”的選項。此選項會立即使使用者的密碼過期,這意味著他們下次登入時需要更改密碼。您還需要告訴命令要修改哪個使用者的帳戶,方法是用使用者名稱替換“username”。
例如,如果我想使使用者“jane”的密碼過期,我將使用以下命令:
示例
chage --lastday 0 jane
輸出
[root@localhost ~]# chage --lastday 0 jane Changing the aging information for jane Enter the new value, or press ENTER for the default Minimum Password Age [0]: Maximum Password Age [99999]: Last Password Change (YYYY-MM-DD) [2022-10-15]: Expiration Date (YYYY-MM-DD) [2022-10-15]: 0 Password inactive after expiration (days) [99999]: Account expires (YYYY-MM-DD) [never]: Maximum number of days between password change [99999]: Number of days of warning before password expires [7]:
執行此命令會立即設定使用者“jane”的密碼過期資訊。因此,Jane下次嘗試登入時,將需要更改其密碼。
步驟3 − 驗證密碼過期資訊是否已修改。
建議在執行chage命令後驗證密碼過期資訊是否已正確更新。為此,請執行以下命令:
示例
chage -l username
輸出
$ chage -l jane Last password change : Feb 28, 2023 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change : 0 Maximum number of days between password change : 90 Number of days of warning before password expires : 7
將“username”替換為您更改密碼的使用者姓名。此命令顯示使用者上次更改密碼的時間、下次需要更改密碼的時間以及有關其密碼的其他重要資訊。
例如,如果我想檢查使用者“jane”的密碼過期資訊,我將使用以下命令:
示例
chage -l jane
輸出
Last password change : Feb 28, 2023 Password expires : Mar 28, 2023 Password inactive : never Account expires : never Minimum number of days between password : 0 Maximum number of days between password : 30 Number of days of warning before password expires : 7
此命令將顯示使用者“jane”當前的密碼過期資訊。
步驟4 − 等待使用者登入並更改其密碼。
使用chage命令更改使用者帳戶的密碼過期資訊後,您應該等待使用者登入並重置其密碼。在他們的下次登入嘗試中,系統將提示他們建立新密碼。一旦使用者輸入了他們的新密碼,系統將自動更新密碼過期資訊以反映最近的密碼更改。之後,使用者可以像往常一樣繼續使用他們的帳戶。
結論
強制使用者在下一次登入時更改密碼是保護Linux系統上敏感資訊的重要安全措施。在本文中,我們探討了實現此目的的兩種方法。第一種方法涉及使用passwd命令和-e選項使使用者的密碼過期,而第二種方法使用chage命令修改系統上使用者或所有使用者的密碼老化策略。兩種方法都能有效地強制使用者更改密碼,但chage命令更適合一次更改多個使用者的密碼老化策略。管理員應定期使用這些方法,以確保使用者建立強大且安全的密碼,並保護其Linux系統免受未授權訪問。