通过iptables屏蔽spam IP

下面的代码会清空现在iptables设置,请做好备份。
spam ip来源于http://www.stopforumspam.com/的近90天的数据

#!/bin/bash
rm -f /root/listed_ip_*
wget -q -c --no-cache http://www.stopforumspam.com/downloads/listed_ip_90.zip -P /root/ --output-document=/root/listed_ip_90.txt.zip
unzip /root/listed_ip_90.txt.zip > /dev/null
BLOCKDB=/root/listed_ip_90.txt

echo "*filter" >/tmp/iptables-save
echo ":INPUT ACCEPT [0:0]" >>/tmp/iptables-save
echo ":FORWARD ACCEPT [0:0]" >>/tmp/iptables-save
echo ":OUTPUT ACCEPT [0:0]" >>/tmp/iptables-save
IPS=$(grep -Ev "^#" $BLOCKDB)
for i in $IPS
do
echo "-A INPUT -s $i/32 -p tcp -m tcp --dport 80 -j DROP" >>/tmp/iptables-save
done
echo "COMMIT" >>/tmp/iptables-save
cat /tmp/iptables-save | iptables-restore

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注