【发布时间】:2014-06-10 19:09:13
【问题描述】:
我正在为我的工作使用 iptables 最近的匹配,因为它保存了 ip 地址和我需要的最后一次看到的值。 但现在我需要从 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/hour 并通过 RETURN 目标离开 TEST 链。第二条规则从默认最近列表中删除不匹配/未过滤的数据包(速率低于 5 pkts/小时)。
您可以从用户空间中删除:
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
另见:
【讨论】:
-A TEST -m recent --remove 没有匹配到 RETURN 规则为什么?