在 Linux 系统范围内应用代理设置?

在 Linux 系统范围内应用代理设置?

我们的校园采用带有身份验证的代理服务器。

因此,我必须应用http://username:password@proxyIp:port/bash 配置文件(假设用于 wget 或 curl)或手动输入每个图形应用程序(如 gtalk)的详细信息,并且如果我使用 localhost(XAMPP),

我必须配置 XAMPP 等等。如果我更改了代理密码,我必须在系统的所有地方都更改它!有没有办法让我在一个地方应用系统范围内的代理设置?尽管我要求的是 Linux,但我也想知道它在 Windows 上的情况。

答案1

Linux 上没有全局代理配置。有些应用程序可能会尊重http_proxy环境变量,具体取决于它们使用的网络/HTTP 库,而其他应用程序则不会。

背景

在 Linux 上(与 Windows 相反),有一系列可以启动 HTTP 连接的库,例如卷曲等等。对于操作系统(内核)来说,它只能看到一组发往世界各地的 TCP 连接。在 Windows 上,大多数应用程序都依赖于 Internet Explorer 附带的 HTTP 库,其余应用程序也经过调整以利用这些设置。

Linux 世界从来没有“发展”出一个配置代理服务器的中心位置,因此,除了重定向防火墙中的所有网络流量之外,根本没有其他办法来强制使用特定的代理服务器。

实用建议

http_proxy通过在进程树中尽早设置变量,您可以获得最佳效果。根据您的 Linux 发行版,您必须查找要将该变量放入的具体位置。在 Ubuntu 上,例如,该位置为/etc/environment

答案2

通常可以设置 http_proxy 环境变量来配置代理设置,并且所有应用程序都应该读取该变量,但这不是强制性的。

http_proxy 设置可以在 $HOME/.bashrc 或类似文件中进行设置。

答案3

是的!有很多方法可以做事情。我制作了一个工具来简化整个任务,因为我有时遇到同样的问题。这在 Debian/Ubuntu 系统上有效。
它们只是 shell 脚本。您可以从以下位置下载这里

相关内容