Linux 系统加固脚本
1.用户的密码必须要包含:大小写字母、数字、特殊符号
2.用户的密码长度不少于10位
3.用户密码的过期时间:30天
4.密码过期前8天提醒用户
5.用户密码输入错误3次后,锁定用户10分钟
6.用户1分钟内没有操作,自动注销!
#!/bin/bash
#增加备用的root用户
#新建用户的密码复杂度、长度
pw_file=/etc/security/pwquality.conf
login_file=/etc/login.defs
auth_file=/etc/pam.d/system-auth
#备份配置文件
cp $pw_file $pw_file.bak
cp $login_file $login_file.bak
cp $auth_file $auth_file.bak
#修改密码长度为10位
echo minlen = 11 > /etc/security/pwquality.conf
#新建密码至少包含1个数字
echo dcredit = -1 >> /etc/security/pwquality.conf
#新建密码至少包含1个小写字母
echo lcredit = -1 >> /etc/security/pwquality.conf
#新建密码至少包含1个大写字母
echo ucredit = -1 >> /etc/security/pwquality.conf
#新建密码至少包含1个特殊字符
echo ocredit = -1 >> /etc/security/pwquality.conf
#密码过期时间30天
sed -i ‘/PASS_MAX_DAYS/s/99999/30/’ $login_file
#过期前7天通知用户
sed -i ‘/PASS_WARN_AGE/s/7/8/’ $login_file
#用户输入密码错误3次,封锁用户10分钟
grep -q ‘pam_tally2.so’ /etc/pam.d/system-auth
if [ $? -ne 0 ];then
echo ‘auth required pam_tally2.so deny=3 unlock_time=300 even_deny_root root_unlock_time=300’ >> /etc/pam.d/system-auth
fi
#用户10秒没有操作,则退出终端
grep -q ‘TMOUT’ /etc/profile || echo “export ‘TMOUT=10’” >> /etc/profile