# 1. 对已经被封禁的IP,直接DROP(封禁名单:mysql_banned)
iptables -A INPUT -p tcp --dport 3306 \
-m recent --name mysql_banned --rcheck --seconds 3600 \
-j DROP
# 2. 60秒内连接超过5次,加入封禁名单
iptables -A INPUT -p tcp --dport 3306 \
-m recent --name mysql_conn --update --seconds 60 --hitcount 5 \
-m recent --name mysql_banned --set \
-j DROP
# 3. 正常连接,记录到追踪名单
iptables -A INPUT -p tcp --dport 3306 \
-m recent --name mysql_conn --set \
-j ACCEPT# 查看当前规则
iptables -L INPUT -n -v
# 查看被追踪的IP列表
cat /proc/net/xt_recent/mysql_conn
cat /proc/net/xt_recent/mysql_banned!
# Ubuntu重启不丢失
apt install iptables-persistent
netfilter-persistent save