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

Linux 賬戶過期處理全攻略:三大修改法與驗證技巧

編輯:關於 Linux

Linux 使用者帳號預設永不過期,但在企業環境中常需設置有效期以符合合規要求。當帳號過期導致無法登入時,系統管理員需掌握多種修改手段。本文系統整理建立帳號時預設、修改現有帳號屬性、調整過期時間三大核心方法,並附帶 chage 驗證技巧與腳本化建議。

法一:建立帳號時指定或修改預設過期策略

1. 單一帳號指定過期日期

useradd linuxidc -e 01/28/2012

日期格式為 MM/DD/YYYY 或 YYYY-MM-DD。

2. 修改預設值影響後續新帳號

編輯 /etc/default/useradd 中的 EXPIRE 參數,或使用命令:

# 查看當前預設
grep EXPIRE /etc/default/useradd
# EXPIRE=

# 設定預設過期日期(此處為 2012-01-19)
useradd -D -e 01/19/2012

# 驗證生效
useradd -D | grep EXPIR
# EXPIRE=01/19/2012

3. 實測驗證流程

# 建立測試帳號(未指定 -e,應套用預設)
useradd tmpuser3

# 查看帳號過期資訊
chage -l tmpuser3
# 輸出關鍵行:
# Account expires : Jan 19, 2012   ← 即為修改的預設值

# 還原預設(清空 EXPIRE)
useradd -D -e ""
useradd -D | grep EXPIRE
# EXPIRE=

重要提示:修改 /etc/default/useradd 僅影響之後新建的帳號,現有帳號不受影響。

法二:修改現有帳號屬性 (usermod)

usermod -e 01/28/2012 linuxidc

直接調整指定帳號的過期日期,立即生效,適用於單一帳號緊急調整。

法三:調整帳號過期時間 (chage)

# 設定過期日期
chage -E 01/28/2012 linuxidc

# 查看完整過期/密碼策略資訊
chage -l linuxidc
# 輸出範例:
# Last password change : Jan 24, 2012
# Password expires : never
# Password inactive : never
# Account expires : Jan 19, 2012
# Minimum days between change : 0
# Maximum days between change : 99999
# Warning days before expire : 7

chage 專門管理密碼與帳號老化策略,參數更豐富:

參數說明
-E, --expiredate帳號過期日期 (YYYY-MM-DD)
-M, --maxdays密碼最大有效天數
-m, --mindays密碼最短修改間隔天數
-W, --warndays過期前警告天數
-I, --inactive過期後鎖定前緩衝天數

腳本化批量管理範例

#!/bin/bash
# 批量延長指定群組帳號過期 90 天
GROUP="developers"
EXTEND_DAYS=90

getent group "$GROUP" | cut -d: -f4 | tr ',' '\n' | while read user; do
    if id "$user" &>/dev/null; then
        # 計算新過期日期
        NEW_EXPIRE=$(date -d "+$EXTEND_DAYS days" +%Y-%m-%d)
        chage -E "$NEW_EXPIRE" "$user"
        echo "Extended $user to $NEW_EXPIRE"
    fi
done

關鍵注意事項

  • 日期格式一致性:建議統一使用 YYYY-MM-DD 避免月日歧義。
  • 過期非即時生效:實測發現設置過期日期後,實際鎖定可能延遲 1-2 天,與 PAM 模組檢查頻率有關。
  • 區分密碼過期與帳號過期:chage -M 控制密碼壽命,chage -E 控制帳號生命週期,兩者獨立運作。
  • 鎖定與解鎖:usermod -L/-U 鎖定/解鎖密碼,不影響過期邏輯;passwd -l/-u 同理。

帳號過期管理示意圖

掌握三大修改法與 chage 驗證體系,配合腳本化批量操作,即可輕鬆應對 Linux 帳號生命週期管理的各類合規與運維場景。

Copyright © Windows教程網 All Rights Reserved