原创作者:运维工程师 谢晋
解决DOS攻击生产案例:根据web日志或者或者网络连接数,监控当某个IP 并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP,监控频 率每隔5分钟。
配置监控脚本
# cat web_dos.sh
#!/bin/bash
LINK=100
while true; do
ss -nt | awk -F "[[:space:]]+|:" '/^ESTAB/{print $(NF-2)}' | sort |uniq -c |while read count ip ;do
if [ $count -gt $LINK ]; then
iptable -A INPUT -s $ip -j REJECT
fi
done
done
# chmod +x web_dos.sh
配置定时任务
# crontab -e
# crontab -l
PATH=/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
*/5 * * * * /root/web_dos.sh