用户使用期限

本文涉及的产品
运维安全中心(堡垒机),免费版 6个月
运维安全中心(堡垒机),企业双擎版|50资产|一周时长
简介:

设置Linux系统用户口令使用期限


  1、我们可以编辑/etc/login.defs文件,通过下面的参数来修改口令老化的默认配置:
#Passwordagingcontrols:
#PASS_MAX_DAYS密码有效期天数设置为9999,实际上就是关闭了口令老化功能
#PASS_MIN_DAYS表示自从上次密码修改以来多少天后用户才被允许修改口令
#PASS_MIN_LEN
#PASS_WARN_AGE表示在口令到期前多少天开始通知用户口令即将到期

PASS_MAX_DAYS9999
PASS_MIN_DAYS0
PASS_WARN_AGE7

   另外一个方法是,修改/etc/pam.d/system-auth文件

     找到 password requisite pam_cracklib.so这么一行替换成如下:
     password  requisite pam_cracklib.so retry=5  difok=3 minlen=10 ucredit=-1 

      lcredit=-3   dcredit=-3 dictpath=/usr/share/cracklib/pw_dict

参数含义:
尝试次数:5    
最少不同字符:3       
最小密码长度:10          
最少大写字母:1       
最少小写字母:3        
最少数字:3        
密码字典:/usr/share/cracklib/pw_dict

这样设置好,你可以做一下测试,不过需要先退出root,因为root用户并不会受这些限制,它可以设置任意的密码。


 2、此外我们也可以编辑/etc/default/useradd文件,在其中查找INACTIVE和EXPIRE关键字:
#useradddefaultsfile
GROUP=100
HOME=/home
INACTIVE=14
//设置在口令已过期而用户一直没有修改口令多少天后用户帐户将置为不可用而锁定,以上设置是14天,
EXPIRE=
//直接指明新用户的口令的失效日期,格式为YYYY-MM-DD。


  SHELL=/bin/bash
以上的设置都只对配置修改后创建的新用户有效,如果要更改已经创建的用户配置,可以使用chage工具:
[root@rhel4~]#chage-M60shangwen
这样我们将设置用户shangwen的PASS_MAX_DAYS为60天,并且相应的更新shadow文件。

-l选项可以查看用户密码老化相关 信息

-m设置PASS_MIN_DAYS

-W设置PASS_WARN_AGE

chage工具可以设置口令老化的各个参数。


Linux用户密码策略

    Linux用户密码的有效期,是否可以修改密码可以通过login.defs文件控制.对login.defs文件修只影响后续建立的用户,如果要改变以前建立的用户的有效期等可以使用chage命令.

    Linux用户密码的复杂度可以通过pam pam_cracklib module或pam_passwdqc module控制,两者不能同时使用. 个人感觉pam_passwdqc更好用.



/etc/login.defs密码策略

PASS_MAX_DAYS   99999     #密码的最大有效期, 99999:永久有期

PASS_MIN_DAYS   0          #是否可修改密码,0可修改,非0多少天后可修改

PASS_MIN_LEN    5          #密码最小长度,使用pam_cracklib module,该参数不再有效

PASS_WARN_AGE   7         #密码失效前多少天在用户登录时通知用户修改密码

pam_cracklib主要参数说明:

    tretry=N:重试多少次后返回密码修改错误

    difok=N:新密码必需与旧密码不同的位数

    dcredit=N: N >= 0:密码中最多有多少个数字;N < 0密码中最少有多少个数字.

    lcredit=N:小宝字母的个数

    ucredit=N大宝字母的个数

    credit=N:特殊字母的个数

    minclass=N:密码组成(大/小字母,数字,特殊字符)



pam_passwdqc主要参数说明:

mix:设置口令字最小长度,默认值是mix=disabled。

max:设置口令字的最大长度,默认值是max=40。

passphrase:设置口令短语中单词的最少个数,默认值是passphrase=3,如果为0则禁用口令短语。

atch:设置密码串的常见程序,默认值是match=4。

similar:设置当我们重设口令时,重新设置的新口令能否与旧口令相似,它可以是similar=permit允许相似或similar=deny不允许相似。

random:设置随机生成口令字的默认长度。默认值是random=42。设为0则禁止该功能。

enforce:设置约束范围,enforce=none表示只警告弱口令字,但不禁止它们使用;enforce=users将对系统上的全体非根用户实行这一限制;enforce=everyone将对包括根用户在内的全体用户实行这一限制。

non-unix:它告诉这个模块不要使用传统的getpwnam函数调用获得用户信息,

retry:设置用户输入口令字时允许重试的次数,默认值是retry=3



密码复杂度通过/etc/pam.d/system-auth实施

如:

要使用pam_cracklib将注释去掉,把pam_passwdqc.so注释掉即可.

#password    requisite     /lib/security/$ISA/pam_cracklib.so retry=3 difok=1

password    requisite     /lib/security/$ISA/pam_passwdqc.so min=disabled,24,12,8,7 passphrase=3

password    sufficient    /lib/security/$ISA/pam_unix.so nullok use_authtok md5 shadow



#password    requisite     /lib/security/$ISA/pam_cracklib.so retry=3 difok=1

新密码至少有一位与原来的不同.



口令老化(Password aging)是一种增强的系统口令生命期认证机制,虽然它会一定程序的削弱用户使用的便利性,但是它能够确保用户的口令定期更换,这是一种非常好的安全措施。大部分的Linux发行版默认都不会打开口令老化功能,但是我们可以很容易地启用它。

1、编辑/etc/login.defs文件,我们可以通过以下参数来修改口令老化的默认配置:

# Password aging controls:

#PASS_MAX_DAYS 密码有效期天数设置为9999,实际上就是关闭了口令老化功能

#PASS_MIN_DAYS 表示自从上次密码修改以来多少天后用户才被允许修改口令

#PASS_MIN_LEN

#PASS_WARN_AGE 表示在口令到期前多少天开始通知用户口令即将到期

PASS_MAX_DAYS 9999

PASS_MIN_DAYS 0

PASS_WARN_AGE 7

2、另外,我们也可以编辑/etc/default/useradd文件,在其中查找INACTIVE和EXPIRE关键字:

# useradd defaults file

GROUP=100

HOME=/home

INACTIVE=14

//设置在口令已过期而用户一直没有修改口令多少天后用户帐户将置为不可用而锁定,以上设置是14天,

EXPIRE=

//直接指明新用户的口令的失效日期,格式为YYYY-MM-DD.

SHELL=/bin/bash

以上的设置都只对配置修改后创建的新用户有效,如果要更改已经创建的用户配置,可以使用chage工具:

[root@rhel4 ~]#chage -M 60 shangwen

以上将设置用户shangwen的PASS_MAX_DAYS为60天,并且相应的更新shadow文件。我们可以使用-l选项查看用户密码老化相关 信息,-m设置PASS_MIN_DAYS,-W设置PASS_WARN_AGE等等。chage工具可以让我们设置口令老化的方方面面参数。以下是 chage的详细参数信息:

用法:chage [选项] 用户名

选项:

-d, ——lastday 最近日期 将最近一次密码设置时间设为“最近日期”

-E, ——expiredate 过期日期 将帐户过期时间设为“过期日期”

-h, ——help 显示此帮助信息并退出

-I, ——inactive 失效密码 将因过期而失效的密码设为“失效密码”

-l, ——list 显示帐户年龄信息

-m, ——mindays 最小天数 将两次改变密码之间相距的最小天数设为“最小天数”

-M, ——maxdays 最大天数 将两次改变密码之间相距的最大天数设为“最大天数”

-W, ——warndays 警告天数 将过期警告天数设为“警告天数”


本文转自 wdy198622 51CTO博客,原文链接:http://blog.51cto.com/weimouren/1732798

相关文章
|
1月前
|
安全
阿里云国际版账户收到账号风险通知,怎么办?
阿里云国际版账户收到账号风险通知,怎么办?
|
1月前
|
监控 数据挖掘 BI
缺陷通知期限是什么?如何在项目中设定缺陷通知期限?
缺陷通知期限(DNP)是项目管理中,承包商完成工程或交付产品后,业主或客户有权通知承包商存在缺陷的特定时间段。此期限旨在保障项目质量、明确责任、合理分配风险及优化合同管理。在DNP内,承包商需对发现的缺陷进行修复。期限类型包括固定期限、分阶段期限和基于性能的期限。设定DNP需综合评估项目特性、行业惯例、风险因素,并通过协商确定,最终在合同中明确。
已知银行整存整取存款不同期限的月息利率分别为: 月息利率= 0.63% 期限=1年 0.66% 期限=2年 0.69% 期限=3年 0.75% 期限=5年
已知银行整存整取存款不同期限的月息利率分别为: 月息利率= 0.63% 期限=1年 0.66% 期限=2年 0.69% 期限=3年 0.75% 期限=5年
180 0
|
6月前
|
开发者
【公告】2021-2022年未兑换积分即将过期,用户等级权益调整
社区用户2021-2022年未兑换积分将于2024年2月29日过期,同时用户等级权益内容将进行调整。
1949 11
解决 SmallPDF 联网验证和试用期过期问题
解决 SmallPDF 联网验证和试用期过期问题
128 0
阿里云管局审核需要多长时间?精准天数查询
阿里云网站备案初审通过提交到管局,管局审核时间为1到20天,在阿里云备案系统中可以查询到精准审核时间
1766 0
阿里云管局审核需要多长时间?精准天数查询
|
Unix 数据安全/隐私保护 安全
|
存储 人工智能 弹性计算
阿里云的认证费用是多少?考试要多长时间?
现在怎么样才能在互联网公司内获得良好的待遇和岗位呢,那一定是要有自己的傍身之技,但是在人才众多的社会中,怎么样才能让领导一眼看到自己呢,那一定是考取阿里云人才认证证书。
447 0
阿里云的认证费用是多少?考试要多长时间?
上传宝贝提示“您的消保保证金额度不足,已启动到期保障”如何解决
其实淘宝对于有些类目的宝贝所要求交的保证金是不一样的,并不是所有类目都是交1000保证金,那么,如何去查询每个类目需要缴纳的保证金是多少呢?