linux 防暴力破解脚本
#!/bin/bash
#ip的访问此数
####################################
cat /var/log/secure |awk '/Failed password/{print $(NF-3)}'|sort|uniq -c|awk '{ print $2"==="$1}' >/tmp/visit_ip-`date +%F`.log
#登录失败5次,自动加入黑名单
#####################################
i=(`cat /var/log/secure |awk '/Failed password/{print $(NF-3)}'|sort|uniq -c|awk '$1>=5 { print $2}'`)
for ip in ${i[@]};do
echo "sshd:$ip:deny" >> /etc/hosts.deny
done
tip:建议将secure日志按天进行分割,crontab计划任务不要过于频繁,否则/etc/hosts.deny文件中会出现重复内容