关闭

Linux监测某一时刻对外的IP连接情况

622人阅读 评论(0) 收藏 举报
分类:

相信大家都熟悉netstat命令吧,这里就主要采用此命令,网上流传的DDoS Deflate工具就是采用IP数量来统计对外连接数,然后结合Iptables的方法来实现某个IP加入黑名单和解禁某IP

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
其中采用的命令,有明显的不足,如没有判断是否为本地连接127.0.0.1或任意地址标识0.0.0.0或空的情况,也没有去掉netstat输出的前两行文字头,且应该降序输出

我自己的版本:

netstat -ant |sed '1,2 d'| awk '{print $5}' | sort | cut -d: -f1 |awk '{if($1!="0.0.0.0" && $1!="" && $1!="127.0.0.1"){print $1}}'| uniq -c |sort -nr

输出为

 2 173.194.72.95
      1 98.254.64.168
      1 91.189.89.144
      1 91.122.59.53
      1 82.208.89.58
      1 81.7.14.114
      1 70.112.226.65
      1 180.76.22.33
      1 143.215.130.46
      1 126.107.72.9
      1 117.79.93.218

设定一个阙值value,若某一时刻,某个对外连接的某个IP1总数超过这个value,则以(IP1,starttime)加入黑名单,然后iptables -t filter -A INPUT  -s IP1 DROP.

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:15307次
    • 积分:375
    • 等级:
    • 排名:千里之外
    • 原创:20篇
    • 转载:0篇
    • 译文:3篇
    • 评论:0条