:)
我希望能够在命中IPTable规则时运行系统命令,将远程设备的IP地址传递给它。
我到处看了看,但什么也没找到。我想过清理日志,但我预计会有很多流量..
任何帮助都是很棒的!
谢谢
(如果有帮助,Ubuntu Linux是我的首选平台)
发布于 2012-07-21 03:08:24
下面是你如何做到这一点:
iptables -I FORWARD -p tcp --dport 80 -d a.b.c.d -j LOG --log-prefix="TRIGGER ME NOW !!!"
tail -f some-logfile | awk '/some-pattern/ {system("run-some-command")}'
应该是足够直接的,应该能够处理大量的流量,尾部命令应该足够快…只需确保文件不会增长太多即可。
发布于 2012-07-21 03:44:58
使用knockd来做这件事。您只需配置一个端口的端口敲门序列,然后告诉knockd您想要运行的命令。通常,它用于添加/删除iptables规则--在某个敲门序列之后打开一个服务(例如,ssh访问),但我不明白为什么您不能在一个非常简单的、一个预期端口规则上的一个包之后使用它来运行命令。
在你的Ubuntu系统上安装‘’apt get install knockd‘,手册页上有一些例子,你可以很容易地适应它。
发布于 2018-08-02 04:35:28
这其实很简单。我们有两种方法可以做到这一点。如果使用结尾日志,则iptables将不依赖于日志结果。
你可以使用NFQUEUE
https://stackoverflow.com/questions/11584824
复制相似问题