apt-get 通过代理工作,但其他任何方式都行不通

apt-get 通过代理工作,但其他任何方式都行不通

这与需要身份验证的代理服务器后面的 Ubuntu 14.04 有关。

我已设法通过代理使 apt-get 工作。我的/etc/apt/apt.conf代理如下所示:

Acquire::http::proxy "http://my_proxy_server:3128/";
Acquire::https::proxy "https://my_proxy_server:3128/";
Acquire::ftp::proxy "ftp://my_proxy_server:3128/";
Acquire::socks::proxy "socks://my_proxy_server:3128/";

我的环境变量看起来相同——我有http_proxyhttps_proxyftp_proxy设置socks_proxy

我有一系列的问题:

  1. 此代理服务器需要身份验证。我没有为 apt-get 指定用户名和密码。但是,我仍然可以这样做,apt-get update并且它运行正常。为什么?

  2. 没有任何其他程序无法正常工作。例如,pip install会失败并显示无法获取的消息 https://pypi.python.org/simple

设置代理的正确方法是什么?

更新

我安装了 google-chrome-stable 并尝试连接到互联网。它要求我进行代理身份验证,我提供了。完成此步骤后,wget似乎pip运行正常!这真的很奇怪。我猜 Chrome 做了一些配置,允许其他应用程序也连接。

现在,新的问题是,如何将其配置为 root?例如,我可以这样做pip install ...,它可以很好地下载软件包,但如果我这样做sudo pip install ...,它就无法连接到 pypi 网站。

答案1

测试一下:

打开一个终端。Ctrl++AltT

运行:

$ sudo -i
# nano /etc/bash.bashrc

将以下几行放入文件中:

export http_proxy=http://my_proxy_server:3128/
export https_proxy=https://my_proxy_server:3128/
export ftp_proxy=http://my_proxy_server:3128/
export socks_proxy=socks://my_proxy_server:3128/

Ctrl+ O,保存文件。Ctrl+ X,关闭 nano。

$ sudo -i
# nano /etc/environment

将以下几行放入文件中

http_proxy=http://my_proxy_server:3128/
https_proxy=https://my_proxy_server:3128/
ftp_proxy=http://my_proxy_server:3128/
socks_proxy=socks://my_proxy_server:3128/

Ctrl+ O,保存文件。Ctrl+ X,关闭 nano。

相关内容