使用usermod -e或useradd -e可设置用户过期时间,如usermod -e 2025-06-30 alice;创建时可用useradd -e 2025-12-31 bob;通过chage -l查看信息;清除过期时间用usermod -e “”或设为远期日期。

在linux中设置用户过期时间,可以使用 usermod 命令配合 –expiredate 选项(或简写为 -e),也可以在创建用户时通过 useradd 设置。这样可以让系统在指定日期后自动禁用该用户,提升安全性。
1. 使用 usermod 设置已有用户的过期时间
如果用户已经存在,可以通过以下命令设置其账户过期日期:
语法:
usermod -e yyYY-MM-DD 用户名
示例:
将用户 alice 的账户设置为2025年6月30日过期:
usermod -e 2025-06-30 alice
设置完成后,用户在该日期之后将无法登录系统。
2. 创建用户时直接设置过期时间
使用 useradd 命令可以在添加用户的同时指定过期时间:
语法:
useradd -e YYYY-MM-DD 用户名
示例:
创建一个名为 bob 的用户,并设置其账户在2025年12月31日过期:
useradd -e 2025-12-31 bob
注意:新创建的用户如果没有设置密码,仍需使用 passwd 命令为其设置密码才能登录。
3. 查看用户的账户过期信息
使用 chage 命令可以查看用户账户的详细有效期信息:
语法:
chage -l 用户名
示例:
chage -l alice
输出会显示账户过期日期、密码修改时间、密码过期策略等信息。
4. 清除用户的过期时间(永不过期)
若想取消账户过期限制,可将过期时间设为空或使用特殊值:
usermod -e “” alice
或
usermod -e “99999” alice
实际上,Linux 中常用一个非常远的日期(如 99999 天后)来表示“永不过期”。
基本上就这些。合理设置用户过期时间有助于管理临时账户和提升系统安全。


