如何查看哪个Linux用户仍在使用默认密码

时间:2016-05-20 03:16:55

标签: linux bash unix passwd

我为少数Linux用户设置了默认密码,现在看来他们从未更改过密码。 1)我如何知道哪些用户使用他们的默认密码? 2)他们的默认密码是什么?

2 个答案:

答案 0 :(得分:1)

您可以强制用户在下次登录时更改密码:

chage -d 0 username

/ etc / shadow中的第二个字段是自1970年1月1日以来的天数'从上次更改密码,您可以使用该信息确定他们是否仍在使用默认密码,但您需要知道何时设置了默认密码

答案 1 :(得分:0)

如果您正在查看c struct for shadow,您会看到/etc/shadow中的第三个字段包含上次密码更改:

  

sp_lstchg - 1970年1月1日以来的日期密码最后一次更改

struct spwd {
    char           *sp_namp; /* user login name */
    char           *sp_pwdp; /* encrypted password */
    long int      sp_lstchg; /* last password change */
    long int      sp_min; /* days until change allowed. */
    long int      sp_max; /* days before change required */
    long int      sp_warn; /* days warning for expiration */
    long int      sp_inact; /* days before account inactive */
    long int      sp_expire; /* date when account expires */
    unsigned long int  sp_flag; /* reserved for future use */
}

您可以从AWK获得一些帮助,仅显示相关用户:

awk -F: -v before=14871 '$3 <= before' /etc/shadow

将在2010年9月19日之前或之后打印所有上次更改密码的用户

查看更多:man 3 shadow