J'essaie d'utiliser pip derrière un proxy au travail.
L'une des réponses de ce post suggère d'utiliser CNTLM . Je l'ai installé et configuré par cet autre post , mais l'exécution a cntlm.exe -c cntlm.ini -I -M http://google.com
donné l'erreur Connection to proxy failed, bailing out
.
J'ai également essayé pip install -–proxy=user:pass@localhost:3128
(le port CNTLM par défaut) mais cela a augmenté Cannot fetch index base URL http://pypi.python.org/simple/
. De toute évidence, quelque chose se passe avec le proxy.
Est-ce que quelqu'un sait comment vérifier de manière plus précise si CNTLM est correctement configuré ou s'il existe un autre moyen de contourner ce problème? Je sais que vous pouvez également définir la http_proxy
variable d'environnement comme décrit ici, mais je ne sais pas quelles informations d'identification mettre. Celles de cntlm.ini
?
Réponses:
Pour configurer CNTLM pour Windows, suivez cet article . Pour Ubuntu, lisez mon article de blog .
Éditer:
Fondamentalement, pour utiliser CNTLM dans n'importe quelle plate-forme, vous devez configurer votre nom d'utilisateur et votre mot de passe haché , avant de l'utiliser
http://127.0.0.1:3128
comme proxy pour votre proxy parent.Modifiez la configuration et ajoutez des informations importantes telles que le domaine, le nom d'utilisateur, le mot de passe et le proxy parent.
Générez un mot de passe haché.
les fenêtres
cntlm –c cntlm.ini –H
Ubuntu / Linux
cntlm -v -H -c /etc/cntlm.conf
Supprimez le mot de passe en texte brut de la configuration et remplacez-les par les mots de passe générés.
Pour vérifier si vous travaillez:
les fenêtres
cntlm –M http://www.google.com
Ubuntu / Linux
sudo cntlm -M http://www.google.com/
Pour des instructions plus détaillées, voir les liens ci-dessus.
Mettre à jour:
Par souci d'exhaustivité, j'ai récemment pu configurer et utiliser CNTLM dans Windows. J'ai rencontré un problème lors du processus de synchronisation de Kindle pour PC à cause de notre proxy et l'installation et la configuration de CNTLM pour Windows ont résolu ce problème pour moi. Référez-vous à mon article pour plus de détails.
la source
--trusted-host pypi.python.org
qui a fait l'affaire pour moi.Avec Ubuntu, je ne pouvais pas faire fonctionner l'option proxy comme annoncé - la commande suivante n'a donc pas fonctionné:
Mais exporter la
https_proxy
variable d'environnement (notez que cehttps_proxy
n'est pas le cashttp_proxy
) a fait l'affaire:puis
la source
-E
dans lasudo
commande, cela me jette constamment quand je me demande pourquoi les programmes ne voient pas mon ENV.Sous Windows, n'oubliez pas de définir
ce que je devais définir
la source
SET HTTPS_PROXY=username:password@<proxyHost>:<proxyPort>
et ça ne fonctionnait pas.SET HTTPS_PROXY = https://512893:Pass%[email protected]:6050
pour le nom d'utilisateur512893
et le mot de passepass#h98
. N'oubliez pas de coder l'URL des caractères spéciaux dans le mot de passe ou le nom d'utilisateur (#
dans ce cas). Essayez également de régler leHTTP_PROXY
drapeau.Cela ne fonctionnait pas pour moi. J'ai dû utiliser https au travail:
Pour mettre à jour, ajoutez -U.
la source
pip install somepackage --proxy https://user:password@mydomain:port
user
mettre, c'est peut-être parce qu'il n'y a rien à mettre:pip install --proxy=https://mydomain:port somepackage
Vous pouvez continuer à utiliser pip sur HTTPS en ajoutant le certificat racine de votre société au fichier cacert.pem dans votre dossier site-packages / pip. Configurez ensuite pip pour utiliser votre proxy en ajoutant les lignes suivantes à ~ / pip / pip.conf (ou ~ \ pip \ pip.ini si vous êtes sous Windows):
C'est tout. Pas besoin d'utiliser des packages tiers ou d'abandonner HTTPS (bien sûr, votre administrateur réseau peut toujours voir ce que vous faites).
la source
~/.pip/pip.conf
alorsexport PIP_CONFIG_FILE=/root/.pip/pip.conf
et mon installation a fonctionné! Merci![Python37]\Lib\site-packages\pip\_vendor\certifi\cacert.pem
. Exportez le certificat d'interception SSL de votre entreprise au format Base64 .cer, collez la clé publique dans ce fichier, et voilà, la prise en charge https complète derrière le proxy d'entreprise.AppData/Roaming/pip/pip.ini
....Pour les fenêtres; définissez votre proxy dans l'invite de commande comme
set HTTP_PROXY=domain\username:password@myproxy:myproxyport
exemple:
set http_proxy=IND\namit.kewat:[email protected]:8880
la source
Cela a fonctionné pour moi (sous Windows via CMD):
la source
C'est ce qui a fonctionné pour moi
la source
pip --proxy http://username:password@proxy-host:proxy-port install <package>
En vertu de notre politique de sécurité, je ne peux pas utiliser https avec pypi, l'inspection SSL réécrit les certificats, cela brise la sécurité intégrée de pip pour www.python.org. L'homme au milieu est l'administrateur du réseau.
J'ai donc besoin d'utiliser du http simple . Pour ce faire, je dois remplacer le proxy système ainsi que le pypi par défaut:
la source
Security
a quatre syllabes. Trop pour Trump.Ouvrez l'invite de commande Windows.
Définissez les variables d'environnement proxy.
Installez les packages Python à l'aide du proxy dans la même invite de commande Windows.
la source
Sous Windows 7:
c'est à dire:
la source
Téléphone comme point d'accès mobile / partage de connexion USB
Si j'ai beaucoup de mal à trouver un moyen de passer par le proxy d'entreprise, je me connecte au Web via mon téléphone (point d'accès sans fil si j'ai le wifi, l'attache USB dans le cas contraire) et fais un rapide
pip install
.Peut ne pas fonctionner pour toutes les configurations, mais devrait attirer la plupart des gens.
la source
Dans Ubuntu 14.04 LTS
À votre santé
la source
J'ai eu le même problème: derrière un proxy d'entreprise avec auth au travail, je ne pouvais pas faire fonctionner pip, ainsi que Sublime Text 2 (eh bien, cela fonctionnait avec une configuration personnalisée de mes paramètres de proxy). Pour pip (et je vais essayer ça sur git), je l'ai résolu en installant le proxy cntlm. C'était très simple à configurer:
server:port
Pour tester cela fonctionne, lancez simplement un nouvel outil de ligne de commande et essayez:
Cela a fonctionné pour moi. J'espère que ceci vous aidera.
la source
Je pourrais y parvenir en exécutant:
J'utilise Python 3.7.3 dans un proxy corporatif.
la source
Configurez la variable d'environnement dans les paramètres système avancés. Dans l'invite de commande, il devrait se comporter comme ceci:
Plus tard, Simply
pip install whatEver
devrait fonctionner.la source
si vous souhaitez mettre à jour pip par proxy, vous pouvez utiliser (par exemple sous Windows):
la source
Pour les utilisateurs de Windows: si vous souhaitez installer Flask-MongoAlchemy, utilisez le code suivant
la source
Si vous vous connectez à Internet derrière un proxy, il peut y avoir un problème lors de l'exécution de certaines commandes.
Définissez les variables d'environnement pour la configuration du proxy dans l'invite de commande comme suit:
la source
Chez CentOS (en fait, je pense que toutes les distributions Linux sont similaires), exécutez
et
vérifiez quelle est la sortie de ces commandes (elles doivent contenir vos adresses proxy).
Si les sorties sont vides ou ont des valeurs incorrectes, modifiez-les, par exemple:
Essayez maintenant de récupérer et d'installer certains packages en utilisant pip:
et en fait je n'ai jamais rencontré le cas quand ça n'a pas marché. Pour certains systèmes, vous devez être un root (sudo ne suffit pas).
la source
Attention, il y a quelque chose de très mauvais avec la commande "pip search". La commande de recherche n'utilise pas le paramètre proxy quelle que soit la façon dont il est transmis.
J'essayais de comprendre le problème uniquement en essayant la commande "search", et j'ai trouvé ce message avec une explication détaillée sur ce bug: https://github.com/pypa/pip/issues/1104
Je peux confirmer que le bogue persiste avec pip 1.5.6 sur Debian 8 avec python 2.7.9. La commande "pip install" fonctionne comme un charme.
la source
J'ai eu l'erreur:
(Le port du serveur proxy est le port ssh transféré
localhost:3128
).J'ai dû définir des proxy http et https pour le faire fonctionner:
comme
http://pypi.python.org/simple/
redirige vershttps://pypi.python.org/simple
maispip
l'erreur ne vous le dit pas.la source
Je ne suis pas non plus un expert dans ce domaine, mais je l'ai fait fonctionner en définissant la
all_proxy
variable dans le fichier ~ / .bashrc. Pour ouvrir un~/.bashrc
fichier et le modifier à partir d'un terminal, exécutez les commandes suivantes,Ajouter le suivant à la fin du fichier,
Ensuite, ouvrez un nouveau terminal ou exécutez-le dans le même terminal,
Le simple réglage
http_proxy
et leshttps_proxy
variables ne suffisent pas pour une utilisation simplepip install somepackage
. Bien que celasudo -E pip install somepackage
fonctionne d'une manière ou d'une autre , mais cela m'a posé un problème au cas où j'utiliserais une installation locale d'Anaconda dans le dossier de mes utilisateurs.PS - J'utilise Ubuntu 16.04.
la source
Que diriez-vous de le faire localement? Très probablement, vous pouvez télécharger à partir de la source https via votre navigateur
Extrayez-le et allez dans le répertoire extrait où se trouve setup.py et appelez:
la source
C'est ce qui fonctionne pour moi:
la source
Définissez la variable d'environnement suivante:
export PIP_PROXY=http://web-proxy.mydomain.com
la source
Si vous utilisez Linux, en tant que root:
Lorsque vous utilisez env, il exporte la variable https_proxy pour l'exécution actuelle de la commande pip install.
$ web_proxy_ip est le nom d'hôte ou l'IP de votre proxy $ web_proxy_port est le port
la source
J'ai résolu le problème avec PIP dans Windows en utilisant "Fiddler" ( https://www.telerik.com/download/fiddler ). Après avoir téléchargé et installé, procédez comme suit:
"Règles" => cliquez sur "Authentifier automatiquement"
Exemple: pip install virtualenv -proxy 127.0.0.1:8888
Ouvrez simplement votre invite et utilisez.
https://github.com/pypa/pip/issues/1182 Recherche de "voltagex" (commenté le 22 mai 2015)
la source
pour Windows, accédez à C: /ProgramData/pip/pip.ini et définissez
[global]
proxy = http: // YouKnowTheRest
avec vos coordonnées proxy. Cela configure en permanence le proxy de pip.
la source
Une approche plus simple pourrait être:
$HOME
répertoire.Copiez et collez les lignes suivantes sous pip.ini / pip.conf:
la source