如何自动封禁、封锁恶意攻击的IP地址?
网站挂在互联网,有一个常见问题就是被恶意攻击,对于一些小的固定IP的DDoS攻击,我们可以通过封锁IP地址来实现安全防护,抵挡小型拒绝服务攻击。
最简单的方式,就是如果检测到恶意攻击,就自动把对应的IP地址封锁若干分钟,时间到了后再自动解禁,这种方式对固定来源攻击比较有效,利用fail2ban工具,可以轻松实现。
非常简单:
Debian/Ubuntu下安装: apt-get -t unstable install fail2ban
默认配置:
[DEFAULT]
maxfailures = 3
bantime = 900
findtime = 600
即某个IP 600秒内,3次连续失败后,就会自动封锁其IP地址900秒钟。900秒后再自动解锁封禁。
fail2ban可以用于监控ssh的登录,apache访问,mail发送等。
fail2ban本质是利用iptables来实现安防的。例如,60秒内,4次失败就封锁:
iptables -I INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
iptables -I INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP
关于fail2ban,具体请参考:
http://www.the-art-of-web.com/system/fail2ban/