iptables 如何在新的连接尝试中运行命令或脚本?
要求:
到(服务器接口 eth0)的外部数据包 --->(服务器接口 eth0)输入表检测到端口 22 上收到的新数据包 --> iptables 运行命令或脚本
我认为,到目前为止,例如:
iptables -A INPUT -i eth0 -p tcp --dport 22 -s xxx.xxx.xxx.xxx/24 -d xxx.xxx.xxx.xxx/32 -m state --state NEW (then do something here like run a script or command (but how?) ) -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
进一步阅读一个类似的问题,有两个答案:
我认为iptables
没有这个能力。我认为你最好的选择是:
iptables
( -j LOG --log-prefix "NEW_CONN_ATTEMPT "
)设置特殊日志记录tail
对于 2 和 3,像这样的 oneliner 可以解决问题:
tail -f /var/log/firewall.log | awk '/NEW_CONN_ATTEMPT/ {system("/usr/local/bin/script.sh")}'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5434 次 |
最近记录: |