我正在努力解决 mangle 表上的 TPROXY 规则,我配置了以下规则:
iptables -t mangle -I PREROUTING 1 -m layer7 --l7dir /etc/l7-protocols --l7proto http -p tcp --dport 80 -j TPROXY --on-port 1035 --tproxy-mark 0xffff
ip rule add fwmark 0xffff lookup 100
ip route add local 0.0.0.0/0 dev lo table 100
http 模式 reg expr 包含这个非常简单的 gerexp:
.*
这样,一切都应该与之相匹配。
我编写了一个程序,打开 sock_raw 并打印所有收到的数据包,我测试了它,它确实有效,我对此很确定。我看到的是,我看不到由 TPROXY 规则引起的重定向,事实上我认为它什么都没有重定向。
你有什么建议吗?也许我误解了一些 iptable 或 l7filter 规则,我的问题真的很简单。
提前谢谢您!Pietro。
答案1
TPROXT 目标要求一个端口在请求的 TCP 端口上监听,经过深度调试(包括一些 printk!!)后,尝试:
nc -l -p 1035
数据包被重定向,但没有被丢弃。