Linux密码有效期如何修改?

修改Linux用户密码有效期: ,1. **单个用户**:使用 chage -M 天数 用户名 设置最大有效期,chage -E 日期 用户名 设置过期日期。 ,2. **全局默认**:编辑 /etc/login.defs,修改 PASS_MAX_DAYS 等参数。 ,3. **查看状态**:chage -l 用户名 检查当前策略。 ,(需root权限操作)

方法1:修改全局默认配置(影响所有新用户)

通过编辑配置文件 /etc/login.defs 设置默认策略:

Linux密码有效期如何修改?

sudo nano /etc/login.defs  # 使用vi或vim亦可

找到以下参数并调整(单位:天):

PASS_MAX_DAYS 90   # 密码最长有效期(90天后必须修改)
PASS_MIN_DAYS 7    # 密码最短有效期(7天内不能修改)
PASS_WARN_AGE 14   # 密码过期前提醒时间(提前14天警告)

生效范围

  • 仅对新创建的用户生效
  • 现有用户需单独修改(见方法2)

方法2:修改特定用户配置(即时生效)

使用 chage 命令调整指定用户的策略:

sudo chage -l username  # 查看当前配置
sudo chage -M 90 username      # 设置密码最长有效期90天
sudo chage -m 7 username       # 设置密码最短修改间隔7天
sudo chage -W 14 username      # 设置过期前14天提醒
sudo chage -I 30 username      # 密码过期后宽限期30天(超时账户锁定)

关键参数说明
| 选项 | 含义 | 示例命令 |
|——|———————–|————————|
| -M | 密码最长使用天数 | chage -M 90 user1 |
| -m | 密码最短修改间隔 | chage -m 7 user1 |
| -W | 过期警告天数 | chage -W 14 user1 |
| -I | 过期后锁定前的宽限期 | chage -I 30 user1 |
| -E | 设置账户绝对过期日期 | chage -E 2025-12-31 user1 |

Linux密码有效期如何修改?


验证配置

# 检查全局默认值(需结合用户实际配置)
grep ^PASS /etc/login.defs
# 查看用户具体策略
sudo chage -l username

输出示例:

Last password change     : Jan 01, 2025
Password expires         : Apr 01, 2025 (90天后)
Password inactive        : May 01, 2025 (宽限期30天)
Account expires          : never
Minimum number of days...: 7
Maximum number of days...: 90
Warning number of days...: 14

注意事项

  1. 权限要求:必须使用 sudo 或 root 账户操作
  2. 兼容性
    • chage 命令适用于所有用户(包括root)
    • /etc/login.defs 对root账户无效(需单独用 chage 配置)
  3. 安全建议
    • 生产环境建议设置 PASS_MAX_DAYS ≤ 90
    • 敏感账户启用双因素认证(2FA)补充密码策略
    • 定期审计:使用脚本检查过期账户 awk -F: '{print $1}' /etc/shadow | xargs -n1 chage -l
  4. 关联配置
    • 密码复杂度:通过 /etc/pam.d/common-password/etc/security/pwquality.conf 设置
    • 账户锁定:失败登录处理(如 pam_tally2 模块)

常见问题

Q:修改后为何不生效?
A:检查是否冲突:

  • 用户自定义策略覆盖全局设置(用 chage -l 确认)
  • 系统启用其他认证模块(如LDAP)需在主服务器配置

Q:如何批量修改现有用户?
A:使用循环脚本(谨慎操作):

# 将所有用户密码有效期设为90天
for user in $(cut -d: -f1 /etc/passwd); do sudo chage -M 90 $user; done

合理配置密码有效期是Linux基础安全防护的关键步骤:

Linux密码有效期如何修改?

  1. 全局策略:通过 /etc/login.defs 管理新用户默认值
  2. 精细控制:用 chage 命令定制单个用户策略
  3. 深度防御:结合密码复杂度、账户锁定机制形成完整防护链

引用说明:本文内容基于Linux官方文档(man 5 login.defs, man 8 chage)及CIS安全基准最佳实践,操作前请备份关键文件(如 /etc/login.defs/etc/shadow)。

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/43272.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年7月1日 23:52
下一篇 2025年7月1日 23:59

相关推荐

  • Linux如何查看文件内容?

    Linux查看文件内容常用命令: ,1. cat 直接显示整个文件; ,2. less 或 more 分页浏览长文件(less支持上下翻页); ,3. head/tail 查看文件首尾部分; ,4. 文本编辑器如 nano 或 vim 可编辑查看。

    2025年6月7日
    000
  • 如何确认Linux时间已同步?

    使用 timedatectl status 查看 “NTP synchronized” 或 “System clock synchronized” 状态,也可运行 ntpq -p 检查 NTP 服务器连接,chrony 用户使用 chronyc sources。

    2025年6月11日
    000
  • Linux怎样查看文件编码格式

    查看Linux文件编码格式,常用file -i 文件名命令直接显示MIME类型和字符集(如UTF-8),也可用enca 文件名工具检测编码(需安装),或vim打开文件后输入:set fileencoding查看。

    2025年6月12日
    100
  • Linux如何查看硬件配置?

    使用sudo lshw -short快速查看整体硬件概览,或分别用lscpu查CPU,free -h查内存,lsblk或df -h查磁盘,lspci查主板设备,lsusb查USB设备,dmidecode可获取更详细硬件信息。

    2025年6月8日
    100
  • Linux怎么创建软链接

    使用ln -s命令创建软链接:ln -s 源文件路径 目标链接路径,软链接类似快捷方式,指向原文件,删除原文件会导致链接失效。

    2025年6月24日
    000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN