Pip proxy linux ����������� ����� ������������

How to Use Pip with a Proxy Server

Try a faster and easier way to manage your Python dependencies. Use Python 3.9 by ActiveState and build your own runtime with the packages and dependencies you need. Get started for free by creating an account on the ActiveState Platform or logging in with your GitHub account.

By default pip installs third party packages from the Python Package Index (PyPI). In corporate environments located behind a firewall, you may require the use of an HTTP proxy server to redirect internal traffic to pypi.org, or any other repository that hosts Python packages.

Why Use a Pip Proxy Server?

A proxy server for pip is most commonly used for security and privacy, but can also be used for control:

  • Security & Privacy – a proxy server can be used in combination with firewalls in order to improve internal network security since requests from users on the local network are anonymized via a proxy server.
  • Control – organizations with an internal repository of Python packages may prefer to redirect any outbound traffic directed at pypi.org to their private repository instead, in order to prevent developers from installing unapproved packages.

    For example, the ActiveState Platform provides a Hosted Artifact Repository (HAR) that contains Python wheels built from source code. By using a proxy, you can ensure your developers are always working with secure, approved packages.

Dataflow encryption/un-encryption between client and corporate web server, via a proxy server

How to Use Pip with a Proxy Server

Pip supports basic HTTP-based authentication. This is done by embedding username/password login credentials in the URL.

Pip also supports command line completions in bash. To set up to use bash for proxy settings at a Linux command prompt, enter:

To install Python packages via a proxy server, do the following:

Use the pip –proxy command option to specify a proxy in the following format:

For proxies that only require a username:

To install a requirements.txt file via a proxy, enter:

How to Use Pip With a Proxy Server in a Virtual Environment

When you have a proxy server between your virtual environment and Python package repository, you’ll need to set the proxy server environment variables:

# Append below text pattern at the end of ‘

Remember to export the variables after setting them, to make them available to the outer shell session.

You can also modify the environment variable: PIP_USER_AGENT_USER_DATA to include a JSON-encoded string in the user-agent variable used in pip’s requests.

An alternative solution to Python security and package management – Try ActiveState’s Platform

Dependency resolution is at the core of the ActiveState Platform. When you create a project and start adding requirements, the Platforms tell you what dependencies those requirements have.

The ActiveState Platform is a cloud-based build tool for Python. It provides build automation and vulnerability remediation for:

  • Python language cores, including Python 2.7 and Python 3.5+
  • Python packages and their dependencies, including:
  • Transitive dependencies (ie., dependencies of dependencies)
  • Linked C and Fortran libraries, so you can build data science packages
  • Operating system-level dependencies for Windows, Linux, and macOS
  • Shared dependencies (ie., OpenSSL)
  • Find, fix and automatically rebuild a secure version of Python packages like Django and environments in minutes

The ActiveState Platform aims to handle every dependency for every language. That means handling libraries down to the C/C++ level, external tools, and all the conditional dependencies that exist. To take things even further, our ultimate goal is to support multi-language projects. That means that you can create a project using both Python and Perl packages, and we’ll make sure that both languages are using the same (up to date) OpenSSL version.

Python Dependency Management In Action

Get a hands-on appreciation for how the ActiveState Platform can help you manage your dependencies for Python environments. Just run the following command to install Python 3.9 and our package manager, the State Tool:

Windows

Linux

Now you can run state install

. Learn more about how to use the State Tool to manage your Python environment.

Let us know your experience in the ActiveState Community forum.

Watch this video to learn how to use the ActiveState Platform to create a Python 3.9 environment, and then use the Platform’s CLI (State Tool) to install and manage it.

Источник

Использование pip за прокси-сервером

Я пытаюсь использовать pip за прокси на работе.

один из ответов этот пост предложил использовать 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 ?

24 ответов:

чтобы настроить CNTLM для windows, выполните следующие действия статьи. Для Ubuntu, читать мой блог.

Edit:

в принципе, чтобы использовать CNTLM на любой платформе, вам нужно настроить свое имя пользователя и hashed пароль, прежде чем использовать http://127.0.0.1:3128 как прокси для вашего родительского прокси.

отредактируйте конфигурацию и добавьте важную информацию, такую как домен, имя пользователя, пароль и родительский прокси.

создать хешированный пароль.

Windows cntlm –c cntlm.ini –H

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

удалите обычный текстовый пароль из конфигурации и замените их сгенерированными паролями.

чтобы проверить, работает ли:

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

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

дополнительные подробные инструкции см. По ссылкам выше.

обновление:

просто для полноты картины, я был в состоянии настроить и использовать CNTLM в Windows, недавно. Я столкнулся с проблемой во время процесса синхронизации Kindle для ПК из-за нашего прокси-сервера и установки и настройки CNTLM для Windows исправлена эта проблема для меня. См.мои статьи для более подробной информации.

С Ubuntu я не мог заставить прокси-сервер работать так, как рекламируется – поэтому следующая команда сделала не работы:

но экспорт https_proxy переменная окружения (обратите внимание на ее https_proxy не http_proxy ) сделал свое дело:

под Windows не забудьте установить

что мне нужно было установить для

Я не работал для меня. Я использовал https для работ:

для того, чтобы обновлять, добавлять -У.

вы можете продолжать использовать pip по HTTPS, добавив корневой сертификат вашей корпорации в cacert.PEM-файл в папке site-packages/pip. Затем настройте pip для использования прокси-сервера, добавив следующие строки в

/pip / pip.conf (или

\pip\pip.ini, если вы находитесь на Windows):

вот и все. Нет необходимости использовать сторонние пакеты или отказаться от HTTPS (конечно, ваш сетевой администратор все еще может видеть, что вы делаете).

это сработало для меня (на Windows через CMD):

для windows; установите прокси в командной строке как
set HTTP_PROXY=domain\username:password@myproxy:myproxyport

пример:
set http_proxy=IND\namit.kewat:xl123456@192.168.180.150:8880

в соответствии с нашей политикой безопасности Я не могу использовать https С pypi, SSL-инспекция переписывает сертификаты, он нарушает встроенную безопасность pip для www.python.org человек посередине-это сетевой админ.

Так мне нужно использовать простой http. Для этого мне нужно переопределить системный прокси, а также PyPI по умолчанию:

телефон как мобильная точка доступа / USB-модем

Если у меня есть много проблем с поиском пути через корпоративный прокси-сервер, я подключаюсь к интернету через свой телефон (беспроводная точка доступа, если у меня есть wifi, USB-трос, если нет) и делаю быстрый pip install .

может не работать для всех установок, но большинство людей в крайнем случае.

Это то, что сработало для меня на

у меня была та же проблема : за корпоративным прокси с auth на работе я не мог работать с pip, а также с Sublime Text 2 (Ну, он работал с пользовательской настройкой моих настроек прокси). Для pip (и я попробую это на git), я решил его установить cntlm прокси. Настроить его было очень просто:

  1. изменить cntlm.ini
  2. редактировать поля» Имя пользователя»,» домен»,» пароль»
  3. добавить строку «прокси», с настройками прокси: server:port
  4. убедитесь, что строка «NoProxy» интегрирует » localhost «(как это по умолчанию)
  5. обратите внимание на порт по умолчанию: 3128
  6. сохранить и все.

чтобы проверить, что работает, просто запустите новый инструмент командной строки и попробуйте:

это сработало для меня. Надеюсь, это поможет вам.

Если вы хотите обновить pip через прокси, можно использовать (например, в Windows):

для пользователей windows: Если вы хотите установить Flask-MongoAlchemy, используйте следующий код

настройка переменной invironment в расширенных системных настройках. В командной строке он должен вести себя так :

C:\Windows\system32 > echo %https_proxy%

Позже , Просто pip install whatEver должны работать.

Откройте командную строку Windows.

установить переменные среды прокси.

установите пакеты Python с помощью прокси-сервера в той же командной строке Windows.

в CentOS (на самом деле я думаю, что все дистрибутивы linux похожи) запустите

проверьте, что выводят эти команды (они должны содержать ваши прокси-адреса).

если выходные данные пусты или имеют неправильные значения, измените их, например:

теперь попробуйте извлечь и установить некоторые пакеты с помощью pip:

и на самом деле я никогда не встречал случая, когда он не работал. Для некоторых систем вы нужно быть корнем (судо не достаточно).

внимание, есть что-то очень плохое с командой «pip search». Команда поиска не использует параметр прокси независимо от способа его передачи.

Я пытался выяснить проблему, только попробовав команду «поиск», и нашел этот пост с подробным объяснением об этой ошибке:https://github.com/pypa/pip/issues/1104

Я могу подтвердить, что ошибка остается с pip 1.5.6 на Debian 8 С python 2.7.9. Команда «pip install» работает как шарм.

(порт прокси-сервера-это ssh-порт, перенаправленный на localhost:3128 ).

Я должен был установить оба HTTP и https прокси, чтобы заставить его работать:

как http://pypi.python.org/simple/ перенаправляет на https://pypi.python.org/simple но pip ошибка не говорит вам.

Я также не эксперт в этом, но я сделал его работу, установив all_proxy переменной в

/.файл bashrc. Чтобы открыть

/.bashrc файл и редактировать его из терминала выполните следующие команды,

добавить следующее В конце файла,

затем откройте новый терминал или запустите следующий в том же терминале,

просто http_proxy и https_proxy переменных недостаточно для простого использования pip install somepackage . Хотя как-то sudo -E pip install somepackage работает, но это дало мне некоторые проблемы в случае, если я использую локальную установку Anaconda в папке моих пользователей.

П. С. — Я использую Ubuntu 16.04.

Как насчет просто сделать это локально? Скорее всего, вы можете скачать с источника https через ваш браузер

    загрузите файл модуля (mysql-connector-python-2.0.3.молния /ГЗ. прием.)

Источник

Использование pip за прокси

Я пытаюсь использовать pip за прокси на работе.

один из ответов этот пост предложил использовать 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 ?

24 ответов

чтобы настроить CNTLM для windows, выполните следующие действия статьи. Для Ubuntu, читать мой блог.

Edit:

в основном, чтобы использовать CNTLM на любой платформе, вам нужно настроить свое имя пользователя и hashed пароль, прежде чем использовать http://127.0.0.1:3128 в качестве прокси для вашего родительского прокси.

отредактируйте конфигурацию и добавьте важную информацию, такую как домен, имя пользователя, пароль и родительский прокси.

создать хешированный пароль.

окна cntlm –c cntlm.ini –H

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

удалите простой текстовый пароль из конфигурации и замените их сгенерированными паролями.

чтобы проверить, работает ли:

окна cntlm –M http://www.google.com

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

дополнительные подробные инструкции см. По ссылкам выше.

обновление:

просто для полноты, я недавно смог настроить и использовать CNTLM в Windows. Я столкнулся с проблемой во время процесса синхронизации Kindle для ПК из-за нашего прокси-сервера и установки и настройки CNTLM для Windows, исправлена эта проблема для меня. См.мои статьи для получения более подробной информации.

С Ubuntu я не мог заставить прокси-сервер работать так, как рекламируется – поэтому следующая команда сделала не работы:

но экспорт https_proxy переменная окружения (обратите внимание на ее https_proxy не http_proxy ) сделал свое дело:

под Windows не забудьте установить

что мне нужно было установить для

Я не работал для меня. Я использовал https для работ:

для обновления добавьте-U.

вы можете продолжать использовать pip через HTTPS, добавив корневой сертификат вашей корпорации в cacert.PEM-файл в папке site-packages/pip. Затем настройте pip для использования прокси, добавив следующие строки в

/pip / pip.conf (или

\pip\pip.ini, если вы находитесь в Windows):

вот и все. Нет необходимости использовать сторонние пакеты или отказаться от HTTPS (конечно, ваш сетевой администратор все еще может видеть, что вы делаете).

это сработало для меня (в Windows через CMD):

для windows; установите прокси в командной строке как
set HTTP_PROXY=domain\username:password@myproxy:myproxyport

пример:
set http_proxy=IND\namit.kewat:xl123456@192.168.180.150:8880

в соответствии с нашей политикой безопасности Я не могу использовать https С pypi, SSL-инспекция переписывает сертификаты, он ломает встроенную безопасность pip для www.python.org — . Человек в середине-сетевой администратор.

Так мне нужно использовать простой http. Для этого мне нужно переопределить системный прокси, а также PyPI по умолчанию:

телефон как мобильная точка доступа / USB-модем

Если у меня много проблем с поиском пути через корпоративный прокси, я подключаюсь к интернету через свой телефон (беспроводная точка доступа, если у меня есть wifi, USB tether, если нет) и делаю быстрый pip install .

может не работать для всех установок, но большинство людей в крайнем случае.

в Ubuntu 14.04 LTS

Это то, что сработало для меня на

у меня была та же проблема : за корпоративным прокси с auth на работе я не мог работать с pip, а также Sublime Text 2 (Ну, он работал с пользовательской настройкой моих настроек прокси). Для pip (и я попробую это на git), я решил его установить cntlm proxy. Настроить было очень просто:

  1. изменить cntlm.ini
  2. редактировать поля» Имя пользователя»,» домен»,» пароль»
  3. добавьте строку «прокси» с настройками прокси: server:port
  4. убедитесь, что строка «NoProxy» интегрирует «localhost» (по умолчанию)
  5. обратите внимание на порт по умолчанию: 3128
  6. сохранить и все.

чтобы проверить, что работает, просто запустите новый инструмент командной строки и попробуйте:

это сработало для меня. Надеюсь, это поможет вам.

Если вы хотите обновить pip по прокси, можете использовать (например, в Windows):

для пользователей windows: Если вы хотите установить Flask-MongoAlchemy, используйте следующий код

настройка переменной invironment в расширенных системных настройках. В командной строке он должен вести себя так :

Позже , Просто pip install whatEver должны работать.

Источник

Читайте также:  Эта команда может использоваться только для контроллера домена windows
Оцените статью