当前位置:首页 > Centos > 正文

Centos chage命令详解(手把手教你修改密码过期信息)

在 CentOS 系统中,为了提升服务器的安全性,管理员通常会设置用户密码的过期策略。而 chage 命令正是 Linux 系统中用于查看和修改用户密码过期信息的核心工具。本文将详细讲解如何使用 chage 命令来管理用户账户的密码有效期,即使是 Linux 新手也能轻松上手。

Centos chage命令详解(手把手教你修改密码过期信息) chage命令 修改密码过期信息 Linux用户密码策略 系统安全设置 第1张

什么是 chage 命令?

chage(change age)是 CentOS / RHEL / Fedora 等基于 Red Hat 的 Linux 发行版中用于管理用户密码过期信息的命令行工具。通过它,你可以:

  • 查看用户的密码过期时间
  • 设置密码必须更改的最小/最大天数
  • 设置密码过期后的宽限期
  • 设置账户失效日期

查看当前用户的密码过期信息

要查看某个用户的密码策略,可以使用以下命令(需要 root 权限):

# 查看用户 tom 的密码过期信息sudo chage -l tom  

输出示例:

Last password change                                    : Apr 01, 2024Password expires                                        : Jun 30, 2024Password inactive                                       : Jul 10, 2024Account expires                                         : neverMinimum number of days between password change          : 0Maximum number of days between password change          : 90Number of days of warning before password expires       : 7  

常用 chage 参数说明

以下是 chage 命令最常用的选项:

参数 作用
-l 列出用户当前的密码过期信息
-m DAYS 设置密码更改的最小间隔天数
-M DAYS 设置密码更改的最大间隔天数(即密码有效期)
-W DAYS 设置密码过期前多少天开始提醒用户
-I DAYS 设置密码过期后到账户被禁用之间的宽限期
-E YYYY-MM-DD 设置账户失效的具体日期

实战:修改用户密码过期策略

假设我们要为用户 alice 设置以下策略:

  • 密码每 60 天必须更换一次(最大有效期)
  • 至少 7 天后才能再次修改密码(防止频繁改回旧密码)
  • 密码过期前 5 天开始提醒
  • 密码过期后有 3 天宽限期,之后账户自动锁定

执行以下命令:

sudo chage -M 60 -m 7 -W 5 -I 3 alice  

验证设置是否生效:

sudo chage -l alice  

永久取消密码过期(适用于服务账户)

对于某些自动化脚本或服务使用的账户,可能不希望密码过期。可以这样设置:

# 将最大天数设为 -1 表示永不过期sudo chage -M -1 service_user# 同时可设置账户永不失效sudo chage -E -1 service_user  

安全建议

合理使用 Centos chage命令 可以显著提升系统安全性。建议:

  • 普通用户密码有效期设为 60~90 天
  • 关键系统账户启用强密码策略
  • 服务账户可设置永不过期,但需确保其权限最小化
  • 定期审计用户密码策略,使用 chage -l 批量检查

掌握 Linux用户密码策略系统安全设置 是每一位 CentOS 管理员的必备技能。通过本文介绍的 修改密码过期信息 方法,你可以轻松构建更安全的服务器环境。