从iptables最近列表中删除那些不在ipset中的条目

我使用iptables最近匹配我的工作,因为它保存IP地址和最后看到我需要的值.
但是现在我需要从iptables最近的列表中删除一些条目,这些条目在ipset中.任何人都可以告诉我是否有可能?如果是,那我该怎么办呢?
谢谢.
最佳答案
您可以在iptables规则中删除:

... -m recent --remove ...

例如删除少于5个包/小时的条目:

-A TEST -m recent --rcheck --seconds 3600 --hitcount 5 --rsource -j RETURN
-A TEST -m recent --remove

第一条规则将源ips与> = 5 pkts /小时匹配,并通过RETURN目标离开TEST链.第二个规则从默认的最近列表中删除未匹配/未过滤的数据包(速率低于5 pkts /小时).

您可以使用以下命令从userland中删除:

echo -addr >/proc/net/xt_recent/DEFAULT
          to remove addr from the DEFAULT list
echo / >/proc/net/xt_recent/DEFAULT
          to flush the DEFAULT list (remove all entries).

例如从默认的最近列表中删除ip 192.168.4.7:

echo -192.168.4.7 >/proc/net/xt_recent/DEFAULT

也可以看看:

> man iptables-extensions(8)(搜索最近的)
> http://www.netfilter.org/documentation/HOWTO//netfilter-extensions-HOWTO-3.html#ss3.16

转载注明原文:从iptables最近列表中删除那些不在ipset中的条目 - 代码日志