Ubuntu Software Centerを使用してソフトウェアをインストールしようとすると、次のメッセージが表示されます。
Failed to download repository information
Check Your Internet connection
apt-get install something
を実行しようとすると、次の結果が得られます。
407 Proxy Authentication Required
ユーザー名とパスワードが必要なプロキシサーバーを使用しています。ネットワークプロキシで必要な番号をプラグインし、システム全体に適用することにより、システムプロキシを手動で設定しました。現在、問題はユーザー名とパスワードを差し込んでいると思います。
Mozilla経由でインターネットを使用すると、ユーザー名とパスワードの入力を求められます。
Apt-getを機能させるには、apt構成ファイルを編集する必要があります。
Sudo -H gedit /etc/apt/apt.conf
Acquire::http::Proxy "http://username:password@proxyhost:port/";
を追加します
上記の構文は厳密に従う必要があります。
ユーザー名またはパスワードに「@」が含まれている場合、この設定は失敗する可能性があります。 FTPなどの他のプロトコルのプロキシ構成を追加することもできます。
更新:ユーザー名またはパスワードに「@」が含まれている場合は、%40に置き換えることができます。例:パスワードが@123
の場合、%40123
として入力します。
他の文字については、これを参照してください パーセントエンコード
最初に、Linuxウィザードを使用してプロキシ設定を設定し、オプションを手動で使用し、このウィザードボックスのようにシステム全体に設定を適用します。
プロキシ環境を追加します。これらは単なる設定例です...
コマンドプロンプトログインを開き、apt.confファイルを編集します。
Sudo vi /etc/apt/apt.conf
AcquireキーWordで始まるコードの行はすでに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
NTLM認証を実行しているエンタープライズプロキシの背後にいる場合、CNTLMを使用できます。
$ Sudo apt-get install cntlm
$ Sudo vi /etc/cntlm.conf
デフォルト設定(ドメイン、ユーザー名、パスワード、プロキシ)を変更します。次に、サービスを再起動します。
$ Sudo /etc/init.d/cntlm restart
Ubuntuのシステム全体のプロキシとしてlocalhost:3128
(デフォルトのCNTLMポート)を使用できるようになりました。
http://cntlm.sourceforge.net/ のドキュメントを確認してください。
Ubuntuの最新バージョンでは、[システム設定]> [ネットワーク]> [ネットワークプロキシ]を使用できます。"apply system wide"
をクリックすると、少なくとも/etc/apt/sources.list
ファイルを含むさまざまな場所のプロキシ設定が変更されますが、...
認証を求めるメカニズムはありません。なぜ誰もまだその部分を作成していない理由はわかりませんが、このため、認証が必要な場合は、パスワードとユーザー名も次の形式で入力する必要があります。
username:[email protected]
パスワードまたはユーザー名に@
または#
または!
などの特殊文字が含まれている場合は、おそらくすべてにHTML化された文字コードを使用する必要があります。それらの特殊文字の。その方法については、このページを参照してください。 http://www.obkb.com/dcljr/charstxt.html
このチュートリアルが役に立つと思います。
[ネットワーク]タブをクリックして、[手動プロキシ設定]オプションを選択し、プロキシサーバー、ポートの詳細を入力します。ユーザー名、パスワードがある場合は、[認証]をクリックしてこれらの詳細を入力し、[OK]をクリックします
( http://www.ubuntugeek.com/how-to-configure-ubuntu-desktop-to-use-your-proxy-server.html から)
シェルで起動されたすべてのプログラムに対して呼び出すには、/etc/bash.bashrc
を使用してgksudo gedit /etc/bash.bashrc
に追加して、すべてのbashセッションにシステム全体に適用するか、ユーザー空間~/.bashrc
に適用することをお勧めします。
Synapticに関する限り、Preferences
タブの下のNetwork
で、プロキシの認証を設定できるようです。ただし、これはSynapticに固有のようです。
ユーザー名がスペースで区切られている場合は、次を使用します。
export http_proxy='http://Pankaj Kumar Pandit:[email protected]:3128/'
ユーザー名がスペースで区切られていない場合は、次を使用します。
export http_proxy=http://Pankaj_Kumar_Pandit:[email protected]:3128/
違いは、'
を開くことと閉じることの追加です。
良い方法の1つは、 Synaptic Package Manager 、システムに依存しないプロキシ設定を指定し、ユーザー名とパスワードも保存できます。
ただし、このはSoftware Centerのプロキシを変更しません。
私も同じ問題に直面していました。それからCNTLMについて知りました。今では本当にうまく機能します。 CNTLMの設定方法はこちらをご覧ください
Ubuntuでプロキシ設定を設定するpythonスクリプトを作成しました
次の設定を想定して、関連する場所で交換する必要があります
すべての手順を説明するビデオを作成しました。
https://www.youtube.com/watch?v=eBtzKa-dvJg
手順の詳細は次のとおりです。
スクリプトをダウンロードsetproxy.py
setproxy.py
をDownloads
フォルダーに保存したとしましょう
一般的なコマンド:
sudo python setproxy.pyproxy_addressproxy_portproxy_usernameproxy_password
この例では
172.16.26.214
3128
king
queen
認証なしの単純なプロキシの場合、コマンドは次のとおりです。
172.16.26.214
3128
python 3
以上をpython2.7
を使用して実行している場合、コマンドは次のようになります。
172.16.26.214
3128
172.16.26.214
3128
king
queen
次のコマンドを試すこともできます。
HTTP接続の場合-エクスポート:
http_proxy="http://username:password@proxy_server_address:port_no"
Https接続の場合-エクスポート:
https_proxy="https://username:password@proxy_server_address:port_no"
Ftpおよびその他の接続についても同様です。