如何在Linux下大量屏蔽恶意IP地址( 二 )


 
首先,你需要安装了pip(参考这个指导来安装pip) 。
 
使用的下面命令安装iblocklist2ipset 。

$ sudo pip install iblocklist2ipset
在一些发行版如Fedora,你可能需要运行:
$ sudo python-pip install iblocklist2ipset
现在到iblocklist.com,抓取任何一个P2P列表的URL(比如"level1"列表) 。
如何在Linux下大量屏蔽恶意IP地址

文章插图
 
粘帖URL到下面的命令中 。
$ iblocklist2ipset generate
--ipset banthis "http://list.iblocklist.com/?list=ydxerpxkpcfqjaybcssw&fileformat=p2p&archiveformat=gz"
> banthis.txt
上面的命令运行之后,你会得到一个名为banthis.txt的文件 。如果查看它的内容,你会看到像这些:
 
create banthis hash:net family inet hashsize 131072 maxelem 237302
add banthis 1.2.4.0/24
add banthis 1.2.8.0/24
add banthis 1.9.75.8/32
add banthis 1.9.96.105/32
add banthis 1.9.102.251/32
add banthis 1.9.189.65/32
add banthis 1.16.0.0/14
你可以用下面的ipset命令来加载这个文件:
$ sudo ipset restore -f banthis.txt
现在可以查看自动创建的IP集:
$ sudo ipset list banthis
在写这篇文章时候,“level1”类表包含了237,000个屏蔽的IP列表 。你可以看到很多IP地址已经加入到IP集中了 。
 
最后,创建一条iptables命令来屏蔽这些坏蛋!
 
总结
 
这篇文章中,我描述了你该如何用强大的ipset来屏蔽不想要的IP地址 。同时结合了第三方工具iblocklist2ipset,这样你就可以流畅地维护你的IP屏蔽列表了 。那些对ipset的性能提升好奇的人,下图显示了iptables在使用和不使用ipset的基准测试结果(注意时间坐标轴) 。
如何在Linux下大量屏蔽恶意IP地址

文章插图
 
告诉我你多么喜欢这个 。:-)
 
---END---
 
来自:Linux中国
原文:
http://xmodulo.com/block-unwanted-ip-addresses-linux.html
作者:Dan Nanni
译文:
http://linux.cn/article-4904-1.html
译者:geekpi

【如何在Linux下大量屏蔽恶意IP地址】


推荐阅读