用于Treason的Iptables脚本Uncloaked问题

我有一个非常古老的内核版本,愚蠢的“老板认为他知道一切”的理由,我不能更新。 我需要激发我的老板或做一个bash脚本,可以添加一个iptable规则,每次它读取与dmesg不同的ip。 我怎样才能做到这一点。 目前,我有这个工程很好,但它仍然保持复制的IP明显的原因,如何在iptable工程。 我需要find一种方法,在追加IP之前,我想确保ip不在iptable列表中已经:

for BADIP in $(dmesg | grep 'Treason uncloaked!' | cut -d' ' -f6 | cut -d':' -f1 | sort --unique) do iptables -A INPUT -s $BADIP -j DROP done 

为什么不使用Fail2Ban ? 应该很容易为它设置一个filter。

但是,像下面这样的东西也会起作用。

 BADIP在$(dmesg | grep'Treason uncloaked!'| cut -d''-f6 | cut -d':'-f1 | sort --unique)
做
     iptables -L INPUT |  grep $ BADIP
    如果[$?  -ne 0]
    然后
         iptables -A INPUT -s $ BADIP -j DROP
    科幻
 DONE

未经testing,但基本是那个$? 是最后一个命令的退出代码。 如果grep发现ip,它将以0退出。如果grep找不到ip,它将会是非零值,if条件将被触发。