系统代理配置不起作用

系统代理配置不起作用

由于某种原因,我无法通过学校代理连接互联网。这仅适用于 apt-get,具有自动代理检测功能的 Firefox 也可以正常工作。我已经尝试在 /etc/apt.conf.d/01-proxy 中设置代理并将其导出到我的 bash.rc 中,但都没有用。

答案1

打开/etc/apt/apt.conf,如果不存在则创建,添加以下代码:

Acquire::http::proxy "http://username:password@proxyserver:port/";
Acquire::https::proxy "https://username:password@proxyserver:port/";
Acquire::ftp::proxy "ftp://username:password@proxyserver:port/";

要在网络启动时自动执行此操作,请创建一个名为“zproxy”(或类似的文件),其中包含以下内容:

#!/bin/bash

if [ "`sudo iwlist eth1 scanning | grep mySSID`" ]
then
    echo 'Acquire::http::proxy "http://username:password@proxyserver:port/";' > /etc/apt/apt.conf
    echo 'Acquire::https::proxy "https://username:password@proxyserver:port/";' >> /etc/apt/apt.conf
    echo 'Acquire::ftp::proxy "ftp://username:password@proxyserver:port/";' >> /etc/apt/apt.conf
else
    echo '' > /etc/apt/apt.conf
fi

将 mySSID 替换为学校网络的 SSID,将“用户名:密码@代理服务器:端口”替换为正确的代理设置。将文件放入 /etc/network/if-up.d/ 中,并使用以下命令将其标记为可执行文件

~$: sudo chmod +x /etc/network/if-up.d/zproxy

每次连接到网络时,bash 脚本都会运行,并将您的代理设置附加到 /etc/apt/apt.conf 或完全清除该文件。

相关内容