• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

如何在Linux中检查用户密码的到期日期

Linux 开心洋葱 1419次浏览 0个评论

如何在Linux中检查用户密码的到期日期

如果您在Linux上启用了密码策略,则必须在密码过期之前对其进行更改,否则,登录时会提示您更改密码,直到密码过期为止。这通常是7天的宽限期。

出于安全原因,定期更改密码被认为是一种好习惯。

如果您很少使用帐户,则可能由于密码过期而被锁定。

在许多情况下,这种情况可能会在使用无密码登录的服务帐户中发生,因为没有人可以监视它。

这将导致停止在Linux服务器上配置的cronjobs / crontab。如果是这样,如何缓解这种情况?

编写shell脚本可以发送通知,而我们不久前也写了一篇有关它的文章。请转到下面的链接以了解更多信息。

Bash脚本发送带有“ X”天到期的用户帐户列表的电子邮件
上面的脚本将为您提供密码到期的剩余天数,但是本文旨在为您提供终端上的实际日期,这可以通过’chage’命令来实现。

什么是chage命令?
chage代表变革时代。它用于修改用户密码到期信息。它使您可以查看用户帐户的老化信息,更改两次密码更改之间应该经过的天数以及查看上次密码更改的日期。

系统使用此信息来确定用户何时应更改其密码。

它允许管理员执行其他功能,例如设置帐户到期日期,将到期后的密码设置为无效以及设置到期警告。

1)如何在Linux上查看特定用户的密码有效期限?
如果要检查Linux中特定用户的密码到期日期,请使用以下命令:

# chage -l daygeek

Last password change                                    : Feb 13, 2020
Password expires                                        : May 13, 2020
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 7
Maximum number of days between password change          : 90
Number of days of warning before password expires       : 7

2)如何查看Linux上所有用户的密码有效期限?
chage 命令可用于查看特定用户的密码到期日期,但不能一次查询多个用户的此信息。

为此,您可能需要编写一个小的Shell脚本。以下shell脚本允许您列出所有用户(包括系统用户)的密码到期日期:

$ sudo vi /opt/scripts/user-password-expiration-date.sh

#!/bin/sh
for user in $(cat /etc/passwd |cut -d: -f1)
do echo $user
chage -l $user | grep "Password expires"
done | paste -d " "  - - | sed 's/Password expires//g'

置对shell脚本文件的可执行权限:

$ sudo chmod +x /opt/scripts/user-password-expiration-date.sh

执行脚本后,您将获得类似以下的输出,但用户名可能有所不同(示例用户均为u1至u5)

$ sudo sh /opt/scripts/user-password-expiration-date.sh

root                : never
bin                 : never
daemon              : never
adm                 : never
lp                  : never
sync                : never
shutdown            : never
u1               : Nov 12, 2018
u2               : Jun 17, 2019
u3               : Jun 17, 2019
u4               : Jun 17, 2019
u5               : Jun 17, 2019

3)如何查看Linux上除系统用户外的所有用户的密码有效期?
下面的shell脚本将显示用户列表(不包括系统用户)以及他们的密码到期日期:

$ sudo vi /opt/scripts/user-password-expiration-date-1.sh

#!/bin/sh
for user in $(cat /etc/passwd |cut -d: -f1)
do echo $user
chage -l $user | grep "Password expires"
done | paste -d " "  - - | sed 's/Password expires//g' | grep -v "never"

设置对shell脚本文件的可执行权限:

$ sudo chmod +x /opt/scripts/user-password-expiration-date-1.sh

您将得到类似下面的输出,但是用户名可能不同(示例用户都是u1到u5):

$ sudo sh /opt/scripts/user-password-expiration-date-1.sh

u1               : Nov 12, 2018
u2               : Jun 17, 2019
u3               : Jun 17, 2019
u4               : Jun 17, 2019
u5               : Jun 17, 2019

结束语
在本指南中,您学习了如何使用Shell脚本查找所有Linux用户的失效日期


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明如何在Linux中检查用户密码的到期日期
喜欢 (3)

您必须 登录 才能发表评论!

加载中……