linux如何强制用户更改密码时不使用最近3天内使用过的密码,降低猜测密码攻击风险
时间: 2024-09-30 19:02:28 浏览: 42
在Linux系统中,可以通过编辑`/etc/login.defs`文件来设置密码策略,包括防止用户选择最近使用的密码。这个文件是由PAM (Pluggable Authentication Modules) 管理的,管理用户的密码规则。
首先,打开该文件通常需要root权限,你可以使用`sudo nano /etc/login.defs` 或者你喜欢的文本编辑器(如vim、nano等)。找到`PASS_MIN_DAYS`、`PASS_MAX_DAYS` 和 `PASS_WARN_AGE` 这几个选项:
- `PASS_MIN_DAYS` 设置最小密码过期天数,比如默认是90天。
- `PASS_MAX_DAYS` 设置最大密码过期天数,例如默认无限制。
- `PASS_WARN_AGE` 当密码即将到期(等于`PASS_WARN_AGE`天数前),系统会发出警告,让用户修改密码。
为了阻止用户使用最近三天的密码,你需要将`PASS_WARN_AGE`设置为至少4天,并确保`PASS_MIN_DAYS`大于3。例如:
```
PASS_MIN_DAYS=60
PASS_WARN_AGE=4
```
这样设置后,当用户尝试更改密码时,如果新选的密码在过去的3天内使用过,系统将会提示他们必须选择一个新的密码。
完成编辑后记得保存并重启系统让配置生效,或者直接更新现有用户的密码策略,使用命令`chage -W <warn_days> <username>`,其中 `<warn_days>` 是警告天数。
阅读全文