Windows和Apache阻止IP按国家

我有DDoS攻击和蛮力,我的客户只来自一个拉美国家,我没有发现来自该国的攻击,所以我认为我的解决办法是find一种方法来阻止来自除所有国家我的客户,但我找不到任何正确的信息,请帮助。

与其他人所说的不同,我有一些人问同样的问题。

您可以从http://www.ipdeny.com/ipblocks/获得来自特定国家的IP范围

使用Powerscript根据下载的文件在Windows防火墙中自动创build防火墙规则。

可悲的是我不能分享我使用的脚本。 不过,我发现一个博客解释与包括脚本相同的技术。 https://www.gregsitservices.com/blog/2016/02/blocking-unwanted-countries-with-windows-firewall/

正如eKKiM所说,你可以使用http://www.ipdeny.com/ipblocks/作为国家区域的来源。 您必须创build一个shell脚本来经常获取您的区域,并将其放入crontab中。 就像是:

 
 #!/ bin / sh的
 BGPEER_FILE = “BGPEERING.IPs”
 BGPEER_URL = “http://www.ipdeny.com/ipblocks/data/aggregated/br-aggregated.zone”
 PATH =在/ usr / local / sbin中:在/ usr / local / bin目录:/ sbin目录:/ bin中:/ usr / sbin目录:在/ usr / bin中
 ###下载BG-PEERING IP ###
 wget -T 10 -t 1 -nd -O“/etc/rc.d/firewall/$BGPEER_FILE.tmp”“$ BGPEER_URL”> / dev / null 2>&1

如果[“x $?”  !=“x0”]; 然后
         rm“/etc/rc.d/firewall/$BGPEER_FILE.tmp”
        退出$?
科幻

 egrep -v'^#'“/etc/rc.d/firewall/$BGPEER_FILE.tmp”>“/etc/rc.d/firewall/$BGPEER_FILE”
 rm“/etc/rc.d/firewall/$BGPEER_FILE.tmp”

 /etc/rc.d/rc.firewall

然后创buildiptables规则只能访问你的国家。 用iptable要非常小心,我的防火墙脚本非常有限制!

rc.firewall的:

 #!/斌/庆典
欧蒂= “eth0的”
 OutIP = “192.168.0.150”
的iptables = “/ usr / sbin目录/ iptables的”
回声=“/斌/回声”

 MA = “的/ etc /的rc.d /防火墙/ BGPEERING.IPs”
如果[-f $ ma]
然后
     为`cat $ ma`上的ip
做
   $ iptables -A INPUT -s $ ip -d $ OutIP -p tcp -j ACCEPT
   DONE
科幻

 MA2 = “的/ etc /的rc.d /防火墙/ BGPEERING.IPs”
如果[-f $ ma2]
然后
    用于`cat $ ma2`中的ip
做
   $ iptables -A INPUT -s $ ip -d $ OutIP -p udp -j ACCEPT
   DONE
科幻

 #删除所有其他传入的stream量
 $ iptables -A INPUT -d $ OutIP -p tcp -j DROP
 $ iptables -A INPUT -d $ OutIP -p udp -j DROP

当然编辑这两个脚本并把正确的值。