系统环境
- ubuntu18.04 & 16.04
增强对服务器多用户管理,防止用户使用弱密码被爆破,使用PAM(Pluggable Authentication Modules),为系统提供口令复杂度策略检测功能。
安装PAM
sudo apt install libpam-cracklib
强制复杂密码
!最好先将密码设成符合规则的密码,然后再设置密码规则,否则可能无法登陆!
配置密码策略
sudo vim /etc/pam.d/common-password
找到 pam_cracklib.so retry=3 这行,在该行后面写入 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
password requisite pam_cracklib.so retry=3 minlen=8 difok=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
含义:
- minlen=8 密码最小长度为 8
- ucredit=-1 最少一个大写字母
- lcredit=-1 最少一个小写字母
- dcredit=-1 最少一个数字
- ocredit=-1 最少一个字符
限制密码尝试次数
sudo vi /etc/pam.d/sshd
在第二行添加下面内容
auth required pam_tally2.so deny=3 unlock_time=5 even_deny_root root_unlock_time=10
- deny=3 表示限制密码错误次数为三次
- unlock_time=5 锁定账户5秒后自动解锁
- even_deny_root 锁定 root 账户
- root_unlock_time=10 root账户解锁时间为 10秒
查看用户登录失败次数
sudo pam_tally2 --user=username
解锁账户
sudo pam_tally2 -r -u user_name
锁定账号
查看系统账号
cat /etc/passwd
将不使用的账号锁定
passwd –l username
解锁账号
passwd -u username