2008年3月18日

Linux镜像服务器封锁部分中国IP,谁的过错?

12日开始,Linux镜像服务器维护者Adrian Reber开始在服务器上封锁部分中国IP。他在blog里面说明了此事发生的因果,翻译如下:
最 近,服务器出现了太多来自中国的连接,我不得不开始封一些子网。服务器上经常出现10个客户端,每个发起超过50个的HTTP连接。他们主要是下载ISO 镜像文件以及其它比较大的文件。我能看到每个客户端都开始下载很多不同的东西。从Fedora 3到 Fedora 7 、Ubuntu的ISO镜像、openSUSE的ISO镜像,以及其它一些大个头的老文件。

刚开始我试图封一些单个的IP地址,但实在太多了,所以我不得不开始封整个子网。我使用如下命令来观察哪些客户端同时开启了很多连接:

lynx -dump -width=2000 http://localhost/server-status | awk -F '{ print
$11} ' | sort -n | uniq -c | sort -n.

输出大概是这样:

21 122.48.129.75
23 210.21.106.229
24 218.17.228.216
26 220.175.101.252
27 222.67.18.227
30 222.27.89.136
39 123.116.101.186
52 121.231.17.153
63
63 ::1

然后我用如下命令计算大概要封哪些子网:

$ whois 121.231.17.153 | grep inetn | sed -e "s, - ,:,g" | awk ' { print
"netmask "$2 }' | sh

121.224.0.0/12

然后用iptable规则进行了封锁

iptables -A INETIN -s 121.224.0.0/12 -j DROP

现在,我实在没别的办法来对付这种同时发起500个连接的互联网的滥用行为了。

Andran Reber的Blog:
http://lisas.de/blog/adrian/2008/Mar/12/

没有评论: