理想情況下,我嘗試使用我的筆記型電腦和 3G 手機作為 WiFi 路由器,將轉送 HTTP(而不是 HTTPS)流量重定向到 privoxy,然後透過 SSH 隧道將流量轉送到 ziproxy VPS。
為了簡單起見,privoxy 目前設定為預設值,即不轉送到另一個代理程式。但接受相交 1 除外
還有 sysctl net.ipv4.ip_forward=1
以下 iptable 指令在本地工作,但被轉送流量忽略,即透過 wifi 連線的使用者不會被 privoxy 過濾,但本機使用者會被過濾,我想要相反的行為
iptables -t nat -A POSTROUTING -o ${INTERNET_IFACE} -j MASQUERADE
iptables -t nat -A OUTPUT -p tcp --dport 80 -m owner --uid-owner privoxy -j ACCEPT
iptables -t nat -A OUTPUT -p tcp --dport 80 -j REDIRECT --to-ports 8118
iptables -A FORWARD -i ${WIFI_IFACE} -j ACCEPT
如何強制 FORWARD HTTP 流量通過 privoxy ?
答案1
它不起作用的原因是您只能在 netfilter 堆疊的某些部分以某些方式修改資料包。出門時修改目的地就太晚了。進去的時候需要修改一下。
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8118
我建議研究構成 netfilter 堆疊的各種表。