设置“iptables”以与外部 HTTP 代理一起使用

设置“iptables”以与外部 HTTP 代理一起使用

我有一台 Linux 机器和一个外部 HTTP 代理。

我不知道如何使用iptables.

sudo iptables -t nat -N PROXY_CHAIN
sudo iptables -t nat -A PROXY_CHAIN -d [proxy-ip] -p tcp --dport [proxy-port] -j ACCEPT
sudo iptables -t nat -A PROXY_CHAIN -p tcp -j REDIRECT --to-port [proxy-port]
sudo iptables -t nat -A OUTPUT -p tcp -j PROXY_CHAIN
sudo iptables -t nat -A OUTPUT -p tcp -j PROXY_CHAIN
sudo /sbin/iptables-save

这些是我运行的命令,但它不起作用。

答案1

代理网关是应用程序感知的网关(OSI 模型的第 7 层)。这意味着并非所有应用程序都可以由任何给定的代理网关代理。换句话说,就代理网关而言,没有一种尺寸适合所有情况。

您需要选择要通过代理网关发送的应用程序,例如 HTTP 流量。然后你需要告诉 HTTP 客户端/代理代理所在的位置。 Web 浏览器是 HTTP 客户端/代理的一个很好的例子

将所有 TCP/UDP 流量转发到代理是没有意义的。是的,您可以在 VPN 服务器上执行此操作,因为它们在网络堆栈的第 3 层和第 4 层运行。但代理是特定于应用程序的。

相关内容