我正在开发一个功能非常有限的客户端(基于 Yocto 项目的 Poky),我想将所有 http/https 请求重定向到同一网络上的另一台机器。我nftables
在目标上进行了测试,并通过成功丢弃指向端口 80 的所有数据包验证了这一点。
sysctl net.ipv4.ip_forward
显示1
。
我尝试使用以下脚本/nft 命令列表:
nft flush ruleset
nft add table ip nat
nft add chain ip nat prerouting { type nat hook prerouting priority 0 \; }
nft add chain ip nat postrouting { type nat hook postrouting priority 100 \; }
nft add rule ip nat prerouting tcp dport 80 dnat to 10.0.0.2:8080
nft add rule ip nat prerouting tcp dport 443 dnat to 10.0.0.2:8080
nft add rule ip nat postrouting masquerade
nft list ruleset
为了测试设置,我在客户端上将域名设置test.test
为 10.0.0.2(通过)。在我的第二台机器上,我让 Burp 监听端口 8080 上的所有接口,并在端口 80 上设置一个简单的 Web 服务器( )。/etc/hosts
python3 -m http.server 80
然后我在客户端上运行curl http://test.test
。我从我的 Burp 机器获取了目录列表,但没有通过 burp 进行重定向。
我还能尝试什么呢?强制所有传出到端口 80 或 443 的数据包通过我的 Burp。基本设置中可以忽略证书问题。