我在Ubuntu有一个(虚拟)Linux机器,它已经完成了redsocks。 在机器内部,我可以确认redsocks确实工作(使用wget
检查外部IP)。
现在,我想要其他客户机共享相同的redsocks代理。 所以我在linux机器上build立了一个PPTP服务器(linux-pptp),并使用PPTP将客户机连接到Linux机器上。
虽然客户端在PPTP连接后仍然收到networking,但是没有redsocks的代理效果。 不知何故PPTP和红袜子没有连接在一起。
这是我的iptables规则:
iptables -t nat -N REDSOCKS iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN iptables -t nat -A REDSOCKS -d 169.254.0.0/16 -j RETURN iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN iptables -t nat -A REDSOCKS -d 224.0.0.0/4 -j RETURN iptables -t nat -A REDSOCKS -d 240.0.0.0/4 -j RETURN iptables -t nat -A REDSOCKS -p tcp -o eth1 -j DNAT --to 127.0.0.1:12345 iptables -t nat -A OUTPUT -p tcp -j REDSOCKS iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o eth1 -j MASQUERADE iptables -A FORWARD -p tcp --syn -s 192.168.10.0/24 -j TCPMSS --set-mss 1356
请注意,机器中只有一个lan卡(eth1),redsocks服务位于127.0.0.1:12345
。
我已经坚持了一整天,任何帮助将不胜感激。 谢谢。
终于解决了。
iptables -t nat -I PREROUTING -i ppp+ -p tcp -j REDIRECT --to 12345