我正在使用这个脚本检查 ddos:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
它将显示类似这样的内容
24 220.160.239.126
25 42.80.231.240
26 182.109.15.223
29 218.64.39.93
我正在使用以下命令阻止 IP:
route add 218.64.39.93 reject
如果计数超过 20,我该如何将检查 netstat 与路由添加拒绝结合起来。
谢谢
答案1
附加:
|awk '$1 > 20 {print $2}'
当第一列中的整数超过 20 的值时,打印输入的第二列中的条目。
|awk '$1 > 20 {print "route add " $2 " reject"}' | /bin/sh
而省略冗余部分| sort -n
将会是对执行所需命令的一种改进。
顺便说一句,像那样的 DIY DOS 保护可能不是最佳解决方案......