封锁恶意IP地址的iptables脚本

发布时间:2020-01-13编辑:脚本学堂
本文介绍下,一个封锁恶意IP地址的iptables脚本,有需要的朋友参考下。

创建一个脚本文件:/root/iptables/blocked.ips,用于阻止进入专用服务器的IP地址和子网列表如下:
192.168.1.0/24
202.54.1.2
# spam
202.5.1.2

脚本内容:
 

复制代码 代码示例:
#!/bin/bash
# 禁止指定 IP/subnet 的shell 脚本
# -------------------------------
IPT=/sbin/iptables
SPAMLIST="spamlist"
SPAMDROPMSG="SPAM LIST DROP"
BADIPS=$(egrep -v -E "^#|^$" /root/iptables/blocked.ips)
 
# 创建一个新的iptables列表
$IPT -N $SPAMLIST
 
for ipblock in $BADIPS
do
   $IPT -A $SPAMLIST -s $ipblock -j LOG --log-prefix "$SPAMDROPMSG"
   $IPT -A $SPAMLIST -s $ipblock -j DROP
done
 
$IPT -I INPUT -j $SPAMLIST
$IPT -I OUTPUT -j $SPAMLIST
$IPT -I FORWARD -j $SPAMLIST