[Linux 常用技巧] Linux 指令简单将攻击IP列入iptables 限制范围(最新改进型)

Jul 12th, 2008

转载本站文章请注明,转载自:扶凯[http://www.php-oa.com]

本文链接: http://www.php-oa.com/2008/07/12/linux-%e6%8c%87%e4%bb%a4%e7%ae%80%e5%8d%95%e5%b0%86%e6%94%bb%e5%87%bbip%e5%88%97%e5%85%a5iptables-%e9%99%90%e5%88%b6%e8%8c%83%e5%9b%b4%e6%9c%80%e6%96%b0%e6%94%b9%e8%bf%9b%e5%9e%8b.html

研究了一下,这个是我的最新版本,呵呵,欢迎测试

netstat -an | grep -v LISTEN | awk ‘{print $5}’ |grep -v 127.0.0.1|grep -v 本机ip|sed  "s/::ffff://g"|awk ‘BEGIN { FS=":" } { Num[$1]++ } END { for(i in Num) if(Num[i]>8) { print i} }’ |grep ‘[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}’|  xargs -i[] iptables -I INPUT -s [] -j DROP

Num[i]>8部分设定值为阀值,这条句子会自动将netstat -an 中查到的来自同一IP的超过一定量的连接的列入禁止范围.   基中本机ip改成你的服务器的ip地址

Del.icio.us Google书签 Digg Live Bookmark Technorati Furl Yahoo书签 Facebook 百度搜藏 新浪 ViVi 365Key 网摘 天极网摘 和讯网摘 博拉网 POCO 网摘 饭否 QQ 书签 Digbuzz 我挖网 Mister Wong
  1. 阳关地带
    Nov 23rd, 2009 at 06:28
    Reply | Quote | #1

    我稍微做了修改,呵呵。

    netstat -an | grep -v LISTEN |grep ‘[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}’ | awk ‘{print $5}’ |grep -v 127.0.0.1|grep -v `/sbin/ifconfig eth0 | grep ‘inet addr:’ | awk ‘{print $2}’ | awk -F’:’ ‘{print $2}’`|sed “s/::ffff://g”|awk ‘BEGIN { FS=”:” } { Num[$1]++ } END { for(i in Num) if(Num[i]>8) { print i} }’ | xargs -i[] iptables -I INPUT -s [] -j DROP