Ubunu设置
设置密码规则
安装crackilib模块
sudo apt-get install libpam-cracklib
修改 /etc/pam.d/common-password
文件
添加以下配置信息
retry=3
允许重试次数
minlen=8
密码最小长度
difok=3
默认值是1,允许新旧密码中相同的字符数
ucredit
新密码中至少有1个大写字符
lcredit=-1
新密码中至少有1个小写字符
dcredit=-1
新密码中至少有1个数字
ocredit=-1
新密码中至少有1个特殊字符
enforce_for_root
此规则对root生效
# here are the per-package modules (the "Primary" block)
password requisite pam_cracklib.so retry=3 minlen=8 difok=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 enforce_for_root
password [success=1 default=ignore] pam_unix.so obscure use_authtok try_first_pass sha512 remember=5
设置密码过期时间
修改 /etc/login.defs
文件以下配置
# 设置密码过期时间 99999表示用不过期
PASS_MAX_DAYS 99999
# 两次修改密码最小时间间隔
PASS_MIN_DAYS 0
# 密码过期前7天提醒
PASS_WARN_AGE 7
只针对新用户生效,老用户不生效
可使用chage -M 180 root
命令设置老用户过期时间
设置用户登录失败策略
auth required pam_tally2.so deny=3 lock_time=20 unlock_time=60 even_deny_root root_unlock_time=60
修改 /etc/pam.d/common-auth
文件,添加下面配置
deny=3
允许登录失败次数
lock_time=10
每次登录失败锁定时间,单位 秒
unlock_time=3600
触发登录失败次数后锁定时间 单位 秒
even_deny_root
针对所有用户生效,包括root
CentOS7版本以上设置
设置密码规则
编辑/etc/pam.d/system-auth
添加以下配置
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= minlen=8 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 difok=5 enforce_for_root
minlen=8
密码最小长度
ucredit=-1
新密码中至少有1个大写字符
lcredit=-1
新密码中至少有1个小写字符
dcredit=-1
新密码中至少有1个数字
ocredit=-1
新密码中至少有1个特殊字符
enforce_for_root
此规则对root生效
设置密码过期时间(与Ubuntu相同)
修改 /etc/login.defs
文件以下配置
# 设置密码过期时间 99999表示用不过期
PASS_MAX_DAYS 99999
# 两次修改密码最小时间间隔
PASS_MIN_DAYS 0
# 密码过期前7天提醒
PASS_WARN_AGE 7
只针对新用户生效,老用户不生效
可使用chage -M 180 root
命令设置老用户过期时间
设置用户登录失败策略
修改 /etc/pam.d/system-auth
文件,添加下面配置
auth required pam_tally2.so deny=3 lock_time=20 unlock_time=60 even_deny_root root_unlock_time=60
deny=3
允许登录失败次数
lock_time=10
每次登录失败锁定时间,单位 秒
unlock_time=3600
触发登录失败次数后锁定时间 单位 秒
even_deny_root
针对所有用户生效,包括root