407プロキシ認証が必要です


38

Ubuntu Software Centerを使用してソフトウェアをインストールしようとすると、次のメッセージが表示されます。

Failed to download repository information
Check Your Internet connection

を実行しようとするとapt-get install something、次のようになります。

407  Proxy Authentication Required

ユーザー名とパスワードが必要なプロキシサーバーを使用しています。ネットワークプロキシに必要な番号をプラグインし、システム全体に適用することにより、システムプロキシを手動で設定しました。問題はユーザー名とパスワードを差し込むことだと思います。

Mozilla経由でインターネットを使用すると、ユーザー名とパスワードの入力を求められます。

回答:


48

apt-getを機能させるには、apt構成ファイルを編集する必要があります。

sudo -H gedit /etc/apt/apt.conf

そして追加 Acquire::http::Proxy "http://username:password@proxyhost:port/";

上記の構文は厳密に従う必要があります。

ユーザー名またはパスワードに「@」が含まれている場合、この設定は失敗する可能性があります。FTPなどの他のプロトコルのプロキシ構成を追加することもできます。

更新:ユーザー名またはパスワードに「@」が含まれている場合、%40に置き換えることができます。例:パスワードとしてを@123入力した場合%40123

他の文字については、このパーセントエンコードを参照してください


4
私はあなたが言ったことを正確にやりましたが、それでも私に同じエラーを与えます。問題は解決しませんでした。
DeLiK

407-プロキシ認証の代わりに、私は上記のプロキシ設定を追加しましたが、今私は404-が見つかりません取得しています
ディーパック

パスワードに「@」が含まれている場合はどうなりますか?
Đēēpak

12

まず、Linuxウィザードを使用してプロキシ設定を設定します。オプションを手動で使用し、このウィザードボックスのようにシステム全体に設定を適用します。

プロキシ環境を追加します。これらは単なる設定例です...
コマンドプロンプトログインを開き、apt.confファイルを編集します。

sudo vi /etc/apt/apt.conf

Acquireキーワードで始まるコードはすでに4行あります。次のように編集します。

Acquire::http::Proxy "http://username:password@proxyhost:port/";
Acquire::https::Proxy "https://username:password@proxyhost:port/";
Acquire::ftp::Proxy "ftp://username:password@proxyhost:port/";


パスワードに@、$ 、!などの特殊文字が含まれている場合 (例:パスワード:P @ ssword)特殊文字を、次のように%プレフィックスを使用した16進コードに置き換えます。

Acquire::http::Proxy "http://username:p%40ssword@proxyhost:port/"; 

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


407-プロキシ認証の代わりに、私は上記のプロキシ設定を追加しましたが、今私は404-が見つかりません取得しています
ディーパック

1行目と4行目の違いは何ですか????
Moataz Elmasry

5

NTLM認証を実行しているエンタープライズプロキシの背後にいる場合、CNTLMを使用できます。

$ sudo apt-get install cntlm
$ sudo vi /etc/cntlm.conf

デフォルト設定(ドメイン、ユーザー名、パスワード、プロキシ)を変更します。次に、サービスを再起動します。

$ sudo /etc/init.d/cntlm restart

localhost:3128(デフォルトのCNTLMポート)をUbuntuのシステム全体のプロキシとして使用できるようになりました。

ドキュメントについては、http://cntlm.sourceforge.net/を確認してください


7
sudo apt-get install cntlm仕事を始めるには、まずそのプロキシを通過する必要があります。
アンドリューサビニク

2

このチュートリアルが役立つと思います。

[ネットワーク]タブをクリックして、[手動プロキシ設定]オプションを選択し、プロキシサーバー、ポートの詳細を入力します。ユーザー名、パスワードがある場合は、[認証]をクリックしてこれらの詳細を入力し、[OK]をクリックします

http://www.ubuntugeek.com/how-to-configure-ubuntu-desktop-to-use-your-proxy-server.htmlから)

シェルで起動されたすべてのプログラムに対して呼び出すには、すべてのbashセッションにシステム全体に適用するために、またはユーザー空間に/etc/bash.bashrc使用するために追加することをお勧めします。gksudo gedit /etc/bash.bashrc~/.bashrc

Synapticに関する限りPreferencesNetworkタブの下でプロキシの認証を設定できるようです。ただし、これはSynapticに固有のようです。


Ubuntu 11を使用しています。シナプスに到達するのに役立ちますか
user38507

また、bash.bashrcに正確にユーザー名とパスワードをプラグインする必要がある場合
user38507

export http_proxy=http://username:password@proxyhost:port/
パンサー

私はコマンドsudo echo "export http_proxy = swastik:ramdayal@192.168.11.107:8081 " >> /etc/bash.bashrcを与えましたが、今でも同じエラーが表示されます
user38507

2

優れた代替手段の1つは、システムに依存しないプロキシ設定を指定し、ユーザー名とパスワードを保存できるSynaptic Package Managerを使用Synapticをインストールするすることです。

プロキシ設定

ただし、これによりSoftware Centerのプロキシ変更されません


2

ユーザー名がスペースで区切られている場合は、次を使用します。

export http_proxy='http://Pankaj Kumar Pandit:ABCD@192.168.1.1:3128/'

ユーザー名がスペースで区切られていない場合は、次を使用します。

export http_proxy=http://Pankaj_Kumar_Pandit:ABCD@192.168.1.1:3128/

違いは、開始と終了の追加です'


2

Ubuntuの最新バージョンでは、[システム設定]> [ネットワーク]> [ネットワークプロキシ]を使用できます。クリック"apply system wide"すると、少なくとも/etc/apt/sources.listファイルを含むさまざまな場所のプロキシ設定が変更されますが、...

認証を求めるメカニズムはありません。なぜ誰もまだその部分を作成していない理由はわかりませんが、このため、認証が必要な場合は、パスワードとユーザー名も次の形式で入力する必要があります。

username:password@proxy.address

パスワードやユーザー名を含む、その中の特殊文字が含まれている場合@か、#または!またはものは何でも、あなたはおそらく、これらの特殊文字のいずれかのHTML化し文字コードを使用する必要があるとしています。その方法については、次のページを参照してください。http//www.obkb.com/dcljr/charstxt.html


1

私も同じ問題に直面していました。それからCNTLMについて知りました。今では本当にうまく機能します。CNTLMの構成方法については、こちらをご覧ください。


2
これは理論的には質問に回答するかもしれませんが、回答の重要な部分をここに含め、参照用のリンクを提供することが望ましいでしょう
おおいぼ

ありがとうございました!これが実際に私を助けた唯一の答えでした。他の答え(私は既に知っていた)は、プロキシが基本HTTP認証を使用していると仮定していますが、これは私の場合ではありませんでした。
アレクサンダーアメルキン

1

Ubuntuでプロキシ設定を設定するPythonスクリプトを作成しました

次の設定を想定して、関連する場所で交換する必要があります

  • proxy_address 172.16.26.214
  • proxy_port 3128
  • proxy_username king
  • proxy_password queen

すべての手順を説明するビデオを作成しました。

https://www.youtube.com/watch?v=eBtzKa-dvJg

手順の詳細は次のとおりです。

  • 最初にダッシュをクリックします
  • 検索ボックスに「プロキシ」と入力します(引用符なし)
  • 「アプリケーション」の下の「ネットワーク」をクリックします
  • 「ネットワークプロキシ」を選択します
  • マニュアルを選択
  • プロキシアドレスとプロキシポートを入力します
  • 適用します。システムパスワードを入力して確認します

スクリプトをダウンロードする setproxy.py

https://pastebin.com/MbBHta8g

あなたが保存したとしましょうsetproxy.pyDownloadsフォルダ

  • オープンターミナルタイプ
  • cd〜/ダウンロード

一般的なコマンド:
sudo python setproxy.py proxy_address proxy_port proxy_username proxy_password
この例では

  • sudo python setproxy.py 172.16.26.214 3128 king queen

認証なしの単純なプロキシの場合、コマンドは次のとおりです。

  • sudo python setproxy.py 172.16.26.214 3128

python 3を使用しpython2.7 て実行している場合、コマンドは次のようになります

  • sudo python2.7 setproxy.py 172.16.26.214 3128
  • sudo python2.7 setproxy.py 172.16.26.214 3128 king queen

1
スクリプトを保存するためにドロップボックスまたはコピーを使用することは非常に悪いです。少なくともgithubまたはpaste.binを使用する必要があります
Quan To

0

次のコマンドを試すこともできます。

HTTP接続の場合-エクスポート:

http_proxy="http://username:password@proxy_server_address:port_no"

https接続の場合-エクスポート:

https_proxy="https://username:password@proxy_server_address:port_no"

ftpおよびその他の接続についても同様です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.