CentOS6.5下的用户密码策略

前端之家收集整理的这篇文章主要介绍了CentOS6.5下的用户密码策略前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

这篇博客记录CentOS6怎么限制密码使用的长度、复杂度,过期时间。目的是防止用户使用弱密码,强制用户设置强密码。

Linux的用户密码是一大安全因素。如果你使用弱密码,极有可能会被人暴力破解。很多系统的安全问题都是由于使用弱密码引起的。

做为系统管理员,你应使用复杂的强密码。

1、修改密码复杂度

不知从何讲起,直接贴配置文件

配置文件:/etc/pam.d/system-auth,保存即生效

其实system-auth这个文件是个链接文件在同目录的system-auth-ac,这两个修改哪一个都行

1#%PAM-1.0
2#Thisfileisauto-generated.
3#Userchangeswillbedestroyedthenexttimeauthconfigisrun.
4authrequiredpam_env.so
5authsufficientpam_fprintd.so
6authsufficientpam_unix.sonulloktry_first_pass
7authrequisitepam_succeed_if.souid>=500quiet
8authrequiredpam_deny.so
9
10accountrequiredpam_unix.so
11accountsufficientpam_localuser.so
12accountsufficientpam_succeed_if.souid<500quiet
13accountrequiredpam_permit.so
14
15passwordrequisitepam_cracklib.sotry_first_passretry=2type=A+b+4+!difok=3minlen=7dcredit=-1ucredit=-1lcredit=-1ocredit=-1##需要修改的行
16
17passwordsufficientpam_unix.sosha512shadownulloktry_first_passuse_authtok
18passwordrequiredpam_deny.so
19
20sessionoptionalpam_keyinit.sorevoke
21sessionrequiredpam_limits.so
22session[success=1default=ignore]pam_succeed_if.soserviceincrondquietuse_uid
23sessionrequiredpam_unix.so


注解:

我设置的策略是:修改密码可重新输入两次,修改密码提示A+b+4+! ,新密码必须要和旧密码有3个字符不同,密码长度最低7位,最少包含1位大写数字,最少包含1位大写字母,最少包含1位小写字母,最少包含1位特殊字符

type=XXX 这个的意思就是修改密码时的提示

retry=N:此选项定义用户在重试输入多少次密码后,返回一个错误信息,然后不准继续输入。缺省是1次。

difok=N:此选项用来定义新密码中必须有几个字符要与旧密码不同,如果新密码中有1/2以上的字符与旧密码不同时,该新密码就会被接受。

  minlen=N:此选项用来设置新密码的最小长度。

  dcredit=N:此选项用来设定新密码中可以包含数字的最大数目。

  ucredit=N:此选项用来设定新密码中可以包含的大写字母的最大数目。

  lcredit=N:此选项用来设定新密码中可以包含的小写字母的最大数目。

  ocredit=N:此选项用来设定新密码中可以包含的特殊字符的最大数目。

具体信息大家可以man pam_cracklib来获取帮助,但是有一点我觉得需要注意一下,就是关于密码长度的计算,官方的man解析很不好理解,你会发现dcredit,ucredit,lcredit,ocredit这些的值也可以设置为正数,也可以为负数

设置为正数,就非常不好理解,可以推荐大家看一下这个网友的博客记录:http://blog.sina.com.cn/s/blog_74bceb490102w4os.html

设置为负数,就代表为最少包含的位数,我这里是最少包含1位


2、修改用户密码过期时间


配置文件:/etc/login.defs,保存即生效

...
25PASS_MAX_DAYS90##密码最大有效时间
26PASS_MIN_DAYS0##最小密码使用时间
27PASS_MIN_LEN5##密码最小长度
28PASS_WARN_AGE7##密码失效前提前多少天数开始警告;
...

设置后,创建的用户即可生效,但是对以前的用户是不能生效的

[root@PEAANSIBLEpam.d]#useraddxiaowang
[root@PEAANSIBLEpam.d]#chage-lxiaowang
Lastpasswordchange:Nov29,2017
Passwordexpires:Feb27,2018
Passwordinactive:never
Accountexpires:never
Minimumnumberofdaysbetweenpasswordchange:0
Maximumnumberofdaysbetweenpasswordchange:90
Numberofdaysofwarningbeforepasswordexpires:7
[root@PEAANSIBLEpam.d]#

这就是密码的复杂度相关的策略,其实关于这一块后期还是要做SSH的错误登陆限制,这样才是一个完整的体系,SSH登陆限制也是基于pam.d这个模块来实现的,有时间再写吧

猜你在找的CentOS相关文章