如何为 Ubuntu 14.04 LTS 设置系统范围代理?(请阅读详细信息)

如何为 Ubuntu 14.04 LTS 设置系统范围代理?(请阅读详细信息)

我可以在浏览器中设置代理并访问互联网。但我想要一个系统范围的代理,这样从我的机器(Ubuntu 14.04 LTS)生成的每个请求都应该通过该代理。如果我们设置浏览器代理,从该特定浏览器生成的请求将仅通过代理,但从其他来源生成的请求将不会通过代理(例如,ping对某个 URL 执行 a)。

我发现了一些与修改 ubuntu 中的一些配置文件相关的旧问题,但说实话,他们没有给出任何针对我的问题的提示。如何设置代理,使每个(即使是最小的)请求都通过代理,然后接触互联网?TIA。

答案1

您的意思是配置所谓的透明代理。这可确保从一台机器发送的任何流量都将被路由到另一台将处理请求的机器(网关)。

要将任何传出流量路由到另一台机器,您需要尝试一下iptables。这应该可以做到:

iptables -t nat -A OUTPUT -p tcp -j DNAT --to-destination 192.168.1.x

这是简单的部分,困难的部分在另一边(充当网关的机器)。

不过,这些链接应该可以为您提供指导:

答案2

您可以打开网络设置并输入代理详细信息,然后将其应用于整个系统。网络管理器小程序就在设置中,或者在搜索应用程序时输入“代理”即可轻松找到。

浏览器代理或任何此类配置仅限于浏览器/应用程序,不会影响其他应用程序连接到网络的方式。因此,在您的例子中,代理是为浏览器设置的,但终端不是浏览器的一部分,因此没有配置任何代理设置。上述方法是图形化方法,简单易用。如果出现任何与 DNS 相关的错误,您可以手动输入 DNS(使用 Google 公共 DNS 8.8.8.8)。

简单方法的唯一问题是,如果您使用经过身份验证的代理,则无需输入身份验证详细信息。您可以设置代理并在浏览器上工作,没有任何问题。唯一的问题会出现在软件中心,您必须调整 APT 配置文件。在 Google 上搜索“如何设置 apt 的代理设置”会有所帮助。

相关内容