Linux用户密码过期策略

一 相关文件

文件作用
/etc/passwd存放用户信息
/etc/shadow存放用户密码
/etc/group存放用户组信息
/etc/gshadow存放/etc/group的加密信息

首先解释 /etc/passwd 文件下的各列信息含义

[oldboy@master ~]$ sudo tail -5 /etc/passwd
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
oldboy:x:1000:1000:oldboy:/home/oldboy:/bin/bash
列数名称含义
1usernameUID到名称的一种映射
2password以前是存放密码的位置,现在存放在/etc/shadow
3UID用户ID,最基本的级别标识用户的编号
4GID用户主要组的ID编号
5GECOS任意文本,一般是用户的姓名
6/home/dir用户个人数据和配置文件的存放目录
7shell用户登录时运行的程序,一般提供命令提示符

其次是 /etc/shadow 文件中各列信息的含义。

[oldboy@master ~]$ sudo tail -5 /etc/shadow
[sudo] password for oldboy: 
avahi:!!:19323::::::
postfix:!!:19323::::::
ntp:!!:19323::::::
tcpdump:!!:19323::::::
oldboy:$6$pO.iG1Bl3a8RS/k5$DSHXmE7Klnsnn4ys7KVWolPAlCrgJi1rM/sAigFA.e4JurEdfpp65k6gsuyxMIj/aDXlUsmXcphCRAbeOUCqo0:19323:0:99999:7:::
列数名称含义
1name系统的有效账户名
2password已加密的密码;如果是感叹号,表示密码已经被锁定
3lastchange最近一次更改密码的日期,表示为距离1970年1月1日的天数
4minage可以更改密码前的最短天数,0则表示“无最短期限要求”
5maxage必须更改密码前的最多天数
6warning密码即将到期的警告期
7inactive账户在密码到期后保持活跃的天数,此时账户仍可登录和修改密码;天数过后,账户锁定
8expire账户到期日期,表示为距离1970年1月1日的天数
9blank空白字段,供未来使用

二 修改密码

passwd 用户名

三 设置密码过期策略

使用chage命令设置密码过期策略。

首先创建一个用户tom

[root@master ~]# useradd tom
[root@master ~]# id tom
uid=1001(tom) gid=1001(tom) groups=1001(tom)

然后给用户添加密码为123456

[root@master ~]# passwd tom
Changing password for user tom.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.

此时查看tom的密码过期策略

[root@master ~]# chage -l tom
Last password change                                    : Dec 12, 2022
Password expires                                        : never
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 0
Maximum number of days between password change          : 99999
Number of days of warning before password expires       : 7

首先设置tom在下一次登陆时,强制修改密码

[root@master ~]# chage -d 0 tom

接着设置用户将在180天后过期

[root@master ~]# date -d "+180 days"
Sat Jun 10 14:50:18 CST 2023
[root@master ~]# chage -E 2023-06-10 tom

再设置,包括tom在内的所有用户必须最多30天,要修改一次密码

[root@master ~]# cat /etc/login.defs|grep '^PASS_MAX'
PASS_MAX_DAYS   30

最后,突然反悔,希望仅设置tom用户最迟每10天修改一次密码
并将对tom用户的密码策略修改内容进行打印。

[root@master ~]# chage -M 10 tom
[root@master ~]# chage -l tom
Last password change                                    : password must be changed
Password expires                                        : password must be changed
Password inactive                                       : password must be changed
Account expires                                         : Jun 10, 2023
Minimum number of days between password change          : 0
Maximum number of days between password change          : 10
Number of days of warning before password expires       : 7
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值