【密码复杂度】
/etc/pam.d/system-auth
dcredit=N : 限制新密码中至少有多少个数字。
ucredit=N : 限制新密码中至少有多少个大写字符。
lcredit=N : 限制新密码中至少有多少个小写字符。
ocredit=N : 限制新密码中至少有多少个其它的字符。此参数用于强制模块不提示用户的新密码,但以前使用的堆叠模块提供的密码之一。
在linux,设置密码复杂度的方法有几个
- 一个是在/etc/login.defs文件,里面几个选项
PASS_MAX_DAYS 90 #密码最长过期天数
PASS_MIN_DAYS 80 #密码最小过期天数
PASS_MIN_LEN 10 #密码最小长度
PASS_WARN_AGE 7 #密码过期警告天数 - 另外一个方法是,修改/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
3、另外一种方法是查看
/etc/login.defs 密码复杂度
【密码策略】
cat /etc/login.defs
PASS_MAX_DAYS 999 #密码最长过期时间
PASS_MIN_DAYS 0 #密码最短过期时间
PASS_MIN_LEN 8 #密码最小长度
PASS_WARN_AGE 7 #密码过期前多少天提前提醒 对于root无效
ENCRYPT_METHOD SHA512 #密码加密方式为SHA512
USERGROUPS_ENAB yes #创建用户时是否同时创建相同用户名的组
UMASK 077 #创建后用户的权限掩码
CREATE_HOME yes #是否同时建立家目录
cat /etc/pam.d/system-auth
auth requisite pam_succeed_if.so uid >= 1000 quiet_success # //对用户的登录条件做一些限制,表示允许uid大于1000的用户在通过密码验证的情况下登录。
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= //对用户密码提供强健性检测
password requisite pam_cracklib.so ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 #至少包含一个大写字母(ucredit),一个小写字母(lcredit),一个数字(dcredit)和一个标点符号(ocredit)
password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok remember=5 #记住最近5次的密码 不可作为新密码
【系统日志保留策略】
/etc/logrotate.conf
[root@localhost ~]$ cat /etc/logrotate.conf
weekly # 每周切割一次
rotate 4 # 只保留四份文件
create # 切割后会创建一个新的文件
dateext # 指定切割文件的后缀名,这里以日期为后缀名
include /etc/logrotate.d # 包含其他配置文件的目录
/var/log/wtmp { # 对哪个文件进行切割
monthly # 每个月切割一次
create 0664 root utmp # 指定创建的新文件的权限,属主,属组
minsize 1M # 文件容量超过这个值时才进行切割
rotate 1 # 只保留一份文件
}
/var/log/btmp {
missingok
monthly
create 0600 root utmp
rotate 1
}
