407 需要代理认证

use*_*507 40 apt proxy

当我尝试使用 Ubuntu 软件中心安装软件时,我得到:

Failed to download repository information
Check Your Internet connection
Run Code Online (Sandbox Code Playgroud)

当我尝试做 a 时apt-get install something,我得到:

407  Proxy Authentication Required
Run Code Online (Sandbox Code Playgroud)

我使用需要用户名和密码的代理服务器。我通过在网络代理中插入所需的数字并在系统范围内应用它来手动设置我的系统代理。我想现在的问题是插入我的用户名和密码。

当我通过 Mozilla 使用 INTERNET 时,它会特别询问我的用户名和密码。

jas*_*eem 52

为了让你的 apt-get 工作,你应该编辑你的 apt 配置文件:

sudo -H gedit /etc/apt/apt.conf
Run Code Online (Sandbox Code Playgroud)

并添加 Acquire::http::Proxy "http://username:password@proxyhost:port/";

应严格遵循上面显示的语法。

如果您的用户名或密码中包含“@”,则此配置可能会失败。您还可以为其他协议(例如 FTP)添加代理配置。

更新:如果您的用户名或密码中包含“@”,您可以将其替换为 %40 示例:如果您的密码@123输入为%40123.

对于其他字符,请参阅此百分比编码

  • 我完全按照你说的做了,但它仍然给我同样的错误。它没有解决问题。 (4认同)

小智 12

首先通过 Linux 向导使用选项手动设置您的代理设置,然后像这个向导框一样在系统范围内应用设置。

添加您的代理环境。这些只是示例设置...
打开您的命令提示符登录并编辑 apt.conf 文件:

sudo vi /etc/apt/apt.conf
Run Code Online (Sandbox Code Playgroud)

已经有4行以Acquire关键字开头的代码,编辑如下:

Acquire::http::Proxy "http://username:password@proxyhost:port/";
Acquire::https::Proxy "https://username:password@proxyhost:port/";
Acquire::ftp::Proxy "ftp://username:password@proxyhost:port/";
Run Code Online (Sandbox Code Playgroud)

注意
如果您的密码包含特殊字符,如@、$、! (例如密码:P@ssword)然后将特殊字符替换为它们的十六进制代码等价物,并带有 % 前缀,如下所示:

Acquire::http::Proxy "http://username:p%40ssword@proxyhost:port/"; 
Run Code Online (Sandbox Code Playgroud)

@==>%40
$==>%24
!==>%21


小智 5

如果您使用的是运行 NTLM 身份验证的企业代理,则可以使用 CNTLM:

$ sudo apt-get install cntlm
$ sudo vi /etc/cntlm.conf
Run Code Online (Sandbox Code Playgroud)

更改默认设置(域、用户名、密码和代理)。然后重启服务:

$ sudo /etc/init.d/cntlm restart
Run Code Online (Sandbox Code Playgroud)

您现在可以使用localhost:3128(默认 CNTLM 端口)作为 Ubuntu 的系统范围代理。

检查http://cntlm.sourceforge.net/的文档。

  • 为了让 `sudo apt-get install cntlm` 工作,你首先需要通过该代理。 (9认同)

bkz*_*and 2

我认为本教程应该对您有所帮助。

单击“网络”选项卡,选择“手动代理配置”选项,然后输入您的代理服务器、端口详细信息。如果您有用户名、密码,请单击“身份验证”以输入这些详细信息,然后单击“确定”

(来自http://www.ubuntugeek.com/how-to-configure-ubuntu-desktop-to-use-your-proxy-server.html

要为 shell 中启动的所有程序调用它,我建议您将其添加到您的/etc/bash.bashrcusing中gksudo gedit /etc/bash.bashrc以在系统范围内将其应用于所有 bash 会话或添加到您的用户空间~/.bashrc

就 Synaptic 而言,在选项卡Preferences下,Network您似乎可以为代理设置身份验证。不过,这似乎是 Synaptic 特有的。