统计apache404错误ip并加入iptables防火墙

#!/bin/bash
#apache日志过略404错误
#获取当前日志时间
date=`date +%Y%m%d`

#将日志文件输出到LOG变量
LOG='pay_access_'$date'.log'

#404错误过滤
awk '$9 == 404 {print $1}' $LOG >./tmplog
awk '{a[$0]++}END{for(i in a)print i,a[i]}' tmplog | sort >./tmpl
awk '$2>10 {print $1}' tmpl >./tmpip

/etc/init.d/iptables restart
#逐行读取文件内ip;添加到iptables防火墙内
ip="tmpip"
while read LINE
do
iptables  -A INPUT -s $LINE -p tcp --dport 80 -j DROP
done < $ip


添加禁止ip为临时的所以每次重启iptables策略就会清空

之后添加计划任务。

你可能感兴趣的:(shell脚本)