通过编辑/etc/login.defs,你可以指定几个参数,来设置口令实效的默认设定:
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_WARN_AGE 7
当设置口令时效的天数为99999时,实际上相当于关闭了口令时效。一个更明智的设定一般是60天——每2个月强制更改一次密码。
PASS_MIN_DAYS参数则设定了在本次密码修改后,下次允许更改密码之前所需的最少天数。PASS_WARN_AGE的设定则指明了在口令失效前多少天开始通知用户更改密码(一般在用户刚刚登陆系统时就会收到警告通知)。
你也会编辑/etc/default/useradd文件,寻找INACTIVE和EXPIRE两个关键词:
INACTIVE=14EXPIRE=这会指明在口令失效后多久时间内,如果口令没有进行更改,则将账户更改为失效状态。在本例中,这个时间是14天。而EXPIRE的设置则用于为所有新用户设定一个密码失效的明确时间(具体格式为“年份-月份-日期”)。
显然,上述这些设定更改之后,只能影响到新建立的用户。要想修改目前已存在的用户具体设置,需要使用chage工具。
# chage -M 60 joe
这条命令将设置用户joe的PASS_MAX_DAYS为60,并修改对应的shadow文件。
你可以使用chage -l的选项,列出当前的账户时效情况,而使用-m选项是设置PASS_MIN_DAYS, 用-W则是设置PASS_WARN_AGE,等等。chage工具可以让你修改特定账户的所有密码时效状态。
注意,chage仅仅适用于本地系统的账户,如果你在使用一个类似LDAP这样的认证系统时,该工具会失效。如果你在使用LDAP作为认证,而你又打算使用chage,那么,哪怕仅仅是试图列出用户密码的时效信息,你也会发现chage根本不起作用。
制定一项策略,定义多长时间一个密码必须进行更改,然后强制执行该策略,是非常不错的一个做法。在解雇了某个雇员后,口令时效策略会保证该雇员不可能在被解雇3个月后发现他的口令依然可用。即使系统管理员忽略了删除他的帐号,该帐号也会因密码时效策略而被自动锁定。当然源码天空
,这一点并不能成为不及时删除该雇员帐号的理由,但是这个策略的确提供了一层额外的安全防护,尤其是在过去常常忽视及时清理帐号的情况下。
/etc/shadow 文件,用于存储 Linux 系统中用户的密码信息,又称为“影子文件”。
由于/etc/passwd 文件允许所有用户读取,易导致用户密码泄露,因此 Linux 系统将用户的密码信息从 /etc/passwd 文件中分离出来,并单独放到了此文件中。
/etc/shadow 文件只有 root 用户拥有读权限,其他用户没有任何权限,这样就保证了用户密码的安全性。
扩展资料
影子文件的内容:
1、用户名。
2、加密密码(*或者!!表示该用户没有密码,或者在某个用户前面加上!让其密码失效,让该用户无法登录)。
3、最后修改时间(以时间戳的形式,以1970年1月1日为起始日期,时间单位为/天)。
4、修改密码的间隔时间(距离上一次修改密码间隔多少天才能修改,单位/天)。
5、密码的有效期,默认99999天,可以更改。
6、密码提醒时间(表示在密码失效时间的前面几天提示更改密码,以密码失效时间的最后几天开始算,单位天)失效后禁止登录。
7、密码宽限时间(密码过期后几天仍然可以使用并且提示更改密码,单位天)过了这个时间后禁止登录(0或者没有表示没有宽限时间,-1表示永久生效)。
8、账号失效时间,时间戳为单位。没填表示永久生效。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)