web-dev-qa-db-ja.com

CNTLMでプロキシの後ろでpipを使う

仕事中にプロキシの後ろでpipを使用しようとしています。

この投稿 からの答えの1つは CNTLM を使用することを提案しました。私はそれをインストールして設定しました この他の記事 、しかしcntlm.exe -c cntlm.ini -I -M http://google.comを実行するとエラーConnection to proxy failed, bailing outが出ました。

私はまたpip install -–proxy=user:pass@localhost:3128(デフォルトのCNTLMポート)を試しました、しかしそれはCannot fetch index base URL http://pypi.python.org/simple/を上げました。明らかに何かがプロキシにあります。

CNTLMが正しく設定されているかどうか、またはこれを完全に回避する別の方法があるかどうかをより明確に確認する方法を誰かが知っていますか?説明したようにhttp_proxy環境変数も設定できることを私は知っています ここ しかし、どの資格情報を入れるべきかよくわかりません。cntlm.iniからのもの

256
Rob

Windows用にCNTLMを設定するには、 記事 に従ってください。 Ubuntuに関しては、 私のブログ投稿 を読んでください。

編集:

基本的に、どのプラットフォームでもCNTLMを使用するには、http://127.0.0.1:3128を親プロキシのプロキシとして使用する前に、ユーザー名とハッシュパスワードを設定する必要があります。

  1. 設定を編集して、ドメイン、ユーザー名、パスワード、親プロキシなどの重要な情報を追加します。

  2. ハッシュパスワードを生成します。

    Windows cntlm –c cntlm.ini –H

    Ubuntu/Linux cntlm -v -H -c /etc/cntlm.conf

  3. 設定からプレーンテキストのパスワードを削除し、生成されたパスワードに置き換えます。

動作しているかどうかを確認するには

Windows cntlm –M http://www.google.com

Ubuntu/Linux Sudo cntlm -M http://www.google.com/

詳しい手順については、上記のリンクを参照してください。

更新:

完全を期すために、最近、WindowsでCNTLMを構成して使用することができました。私たちのプロキシとWindows用のCNTLMのインストールと設定のために私は私のためにKindleのPCの同期プロセス中に問題に遭遇しました。詳細については 私の記事 を参照してください。

63
Annie Lagang

Ubuntuでは、宣伝通りに動作するようにプロキシオプションを取得することができませんでした - そのため、次のコマンドは しませんでした work:

Sudo pip --proxy http://web-proxy.mydomain.com install somepackage

しかし、環境変数https_proxyをエクスポートすると(https_proxyではなくhttp_proxyに注意してください)、うまくいきました。

export https_proxy=http://web-proxy.mydomain.com

それから

Sudo -E pip install somepackage
249
Sameer Vaidya

Windowsの下で設定することを忘れないでください

SET HTTPS_PROXY=<proxyHost>:<proxyPort>

設定する必要があるもの

pip install pep8
91
k7sleeper

私は働いていませんでした。私は仕事にhttpsを使いました:

pip install --proxy=https://user@mydomain:port somepackage

更新するには、-Uを追加してください。

52
Hugo Salvador

あなたのsite-packages/pipフォルダーの中のcacert.pemファイルにあなたの会社のルート証明書を追加することによってHTTPS経由でpipを使い続けることができます。それから〜/ pip/pip.confに次の行を追加してあなたのプロキシを使うようにpipを設定してください(あるいはWindowsの場合は〜\ pip\pip.ini):

[global]
proxy = [user:passwd@]proxy.server:port

それでおしまい。サードパーティのパッケージを使用したり、HTTPSをあきらめたりする必要はありません(もちろん、ネットワーク管理者はまだ自分がやっていることを見ることができます)。

38
djmoch

これは私にとってはうまくいきました(WindowsではCMD経由):

pip install --proxy proxyserver:port requests
27
damian1baran

窓用です。 [コマンドプロンプト]でプロキシを設定します。
set HTTP_PROXY=domain\username:password@myproxy:myproxyport

例:
set http_proxy=IND\namit.kewat:[email protected]:8880

26
namit
$ pip --proxy http://proxy-Host:proxy-port install packagename

これは私のために働いたものです

19
Anand

私たちのセキュリティポリシー 私はhttps pypiを使ってはいけません - SSL検査は証明書を書き換えます、それはwww.python.orgのためのpipの組み込みセキュリティを壊します。真ん中の男はネットワーク管理者です。

だから 私は普通のhttp を使う必要がある。そのためには、デフォルトのpypiだけでなくシステムプロキシも上書きする必要があります。

bin/pip install --proxy=squidproxy:3128 -i http://www.python.org/pypi --upgrade "SQLAlchemy>=0.7.10"
13
bbaassssiiee

Windows 7の場合:

pip install --proxy DOMAIN\user:password@proxyaddress:port package

すなわち:

pip install --proxy BR\neo:[email protected]:8080 virtualenv
12
Daniel

モバイルホットスポット/ USBテザリングとしての電話

企業のプロキシを経由する方法を見つけるのに苦労した場合は、私は自分の電話を通してWebに接続し(無線LANがあればワイヤレスホットスポット、そうでなければUSBテザー)、簡単にpip installを実行します。

すべての設定でうまくいくわけではないかもしれませんが、ほとんどの人が一気に手に入れるはずです。

11
Tommy O'Dell

Windowsのコマンドプロンプトを開きます。

プロキシ環境変数を設定します。

set http_proxy=http://user:password@proxy_ip:port
set https_proxy=https://user:password@proxy_ip:port

同じWindowsコマンドのプロンプトでproxyを使用してPythonパッケージをインストールします。

pip install --proxy="user:password@proxy_ip:port" package_name
11
Jyoti Yadav

私は同じ問題を抱えていました。仕事用の認証を持つ企業用プロキシの背後には、Sublime Text 2だけでなくpipの仕事もできませんでした。 pipについては(そして私はgitでやってみるでしょう)、cntlm proxyをインストールして解決しました。設定はとても簡単でした。

  1. Cntlm.iniを編集する
  2. [ユーザー名]、[ドメイン]、[パスワード]の各フィールドを編集します。
  3. あなたのプロキシ設定で "Proxy"行を追加してください:server:port
  4. 行 "NoProxy"が "localhost"を統合していることを確認してください(デフォルトではそのようになっています)
  5. デフォルトのポートに注意してください:3128
  6. 保存してください。

これをテストするには、新しいコマンドラインツールを起動してみてください。

pip install Django --proxy=localhost:3128

それは私のために働いた。これがお役に立てば幸いです。

7
Johan Chouquet

In Ubuntu 14.04 LTS

   Sudo pip --proxy http://PROXYDOM:PROXYPORT install package

乾杯

7

プロキシでpipをアップグレードしたい場合は、(例えばWindowsで)使用できます。

python -m pip --proxy http://proxy_user:proxy_password@proxy_hostname:proxy_port insta
ll --upgrade pip
5

詳細システム設定で環境変数を設定します。コマンドプロンプトでは、このように動作します。

C:\ Windows\system32> echo%http_proxy%

http:// username:passowrd @ proxy:port

C:\ Windows\system32> echo%https_proxy%

http://ユーザー名:パスワード@プロキシ:ポート

後で、単にpip install whatEverが動作するはずです。

5
mkkhedawat

Windowsをご使用の方:Flask-MongoAlchemyをインストールする場合は、次のコードを使用してください。

pip install Flask-MongoAlchemy --proxy="http://example.com:port"**
4
Nitin Panwar

ローカルでやるだけではどうでしょうか。たぶん、あなたはあなたのブラウザを通してhttpsソースからダウンロードすることができます

  1. あなたのモジュールファイルをダウンロードしてください(mysql-connector- python-2.0.3.Zip/gz ...など)。
  2. それを解凍し、setup.pyがある解凍ディレクトリに移動して、次のコマンドを呼び出します。

    C:\mysql-connector-python-2.0.3>python.exe setup.py install
    
2
Sendi_t

警告、 "pip search"コマンドには非常に悪いことがあります。検索コマンドは、渡される方法にかかわらず、プロキシ設定を使用しません。

私は「検索」コマンドだけを試して問題を解明しようとしていました、そしてそのバグについての詳細な説明と共にこの記事を見つけました: https://github.com/pypa/pip/issues/1104

私はこのバグがDebian 8のpip 1.5.6とpython 2.7.9で残っていることを確認できます。 "pip install"コマンドは魅力的です。

2
Pivert

私はエラーを得ました:

chris@green:~$ Sudo http_proxy=http://localhost:3128 pip install Django==1.8.8 
Downloading/unpacking Django==1.8.8
  Cannot fetch index base URL http://pypi.python.org/simple/
  Could not find any downloads that satisfy the requirement Django==1.8.8
No distributions at all found for Django==1.8.8
Storing complete log in /home/chris/.pip/pip.log

(プロキシサーバーのポートはsshポートからlocalhost:3128に転送されます)。

動作させるためにはhttpとhttpsの両方のプロキシを設定しなければなりませんでした。

chris@green:~$ Sudo http_proxy=http://localhost:3128 https_proxy=http://localhost:3128 pip install Django==1.8.8
Downloading/unpacking Django==1.8.8
  Downloading Django-1.8.8.tar.gz (7.3Mb): 7.3Mb downloaded
  Running setup.py Egg_info for package Django

    warning: no previously-included files matching '__pycache__' found under directory '*'
    warning: no previously-included files matching '*.py[co]' found under directory '*'
Installing collected packages: Django
  Running setup.py install for Django

    warning: no previously-included files matching '__pycache__' found under directory '*'
    warning: no previously-included files matching '*.py[co]' found under directory '*'
    changing mode of build/scripts-2.7/Django-admin.py from 644 to 755
    changing mode of /usr/local/bin/Django-admin.py to 755
    Installing Django-admin script to /usr/local/bin
Successfully installed Django
Cleaning up...

http://pypi.python.org/simple/https://pypi.python.org/simpleにリダイレクトしますが、pipのエラーではわかりません。

2
fadedbee

CentOS(実際にはすべてのLinuxディストリビューションは似ていると思います)で実行します

env|grep http_proxy

そして

env|grep https_proxy

それらのコマンドの出力が何であるかを確認してください(それらはあなたのプロキシアドレスを含むべきです)。

出力が空の場合や値が正しくない場合は、次のように変更します。

export http_proxy=http://10.1.1.1:8080
export https_proxy=http://10.1.1.1:8080

それでは、pipを使用していくつかのパッケージを取得してインストールしてみます。

pip --proxy http://10.1.1.1:8080 install robotframework

そして実際に私はそれがうまくいかなかったときには一度も会ったことがない。システムによってはrootになる必要があります(Sudoだけでは不十分です)。

2
Paweł Wojtal

私もこれのエキスパートではありませんが、〜/ .bashrcファイルでall_proxy変数を設定することによって機能させました。 ~/.bashrcファイルを開いて端末から編集するには、次のコマンドを実行します。

gedit ~/.bashrc &

ファイルの最後に以下を追加してください。

export all_proxy="http://x.y.z.w:port"

それから新しいターミナルを開くか、同じターミナルで以下を実行してください。

source ~/.bashrc

http_proxyおよびhttps_proxy変数を設定するだけでは、単純な使用法pip install somepackageには不十分です。どういうわけかSudo -E pip install somepackageは動作しますが、これは私が私のユーザーのフォルダでAnacondaのローカルインストールを使用している場合には私にいくつかの問題を与えました。

P.S - 私はUbuntu 16.04を使用しています。

2
bytestorm

次の環境変数を設定します。export PIP_PROXY=http://web-proxy.mydomain.com

1
FTM

Linuxを使用している場合は、rootとして実行します。

env https_proxy=http://$web_proxy_ip:$web_proxy_port pip install something

Envを使用すると、コマンドpip installの現在の実行のために変数https_proxyをエクスポートします。

$ web_proxy_ipはプロキシのホスト名またはIPです。$ web_proxy_portはポートです。

1
Adail Junior

これは私のために働くものです:

pip --proxy proxy url:port command package
0
Brock Vond

私は実行することでこれを達成することができます:

pip install --proxy=http://user:[email protected]:3128 package==version

私はPython 3.7.3を企業内プロキシの内部で使用しています。

0
ncastro

windowsの場合はC:/ProgramData/pip/pip.iniに移動して設定します。

[グローバル]

プロキシ= http:// YouKnowTheRest

あなたのプロキシの詳細と一緒に。これは恒久的にプロキシをpipに設定します。

0
Kvothan

私は "Fiddler"( https://www.telerik.com/download/fiddler )を使ってWindowsのPIPの問題を解決しました。ダウンロードしてインストールしたら、次の手順を実行します。

"ルール" => "自動認証"をクリック

例:pip install virtualenv -proxy 127.0.0.1:8888

プロンプトを開いて使用するだけです。

https://github.com/pypa/pip/issues/1182 「voltagex」を検索する(2015年5月22日コメント)

0
Lucius Matos