【问题标题】:pip can't use custom SSL certificates?pip 不能使用自定义 SSL 证书?
【发布时间】:2014-02-19 03:07:40
【问题描述】:

我正在使用最新的 pip 运行 ubuntu 13.10。

我为我的公司代理安装了一整套 SSL 证书,具体如下: https://askubuntu.com/questions/73287/how-do-i-install-a-root-certificate 现在。

Firefox 不再抱怨无法识别的证书,但我仍然得到:

Could not fetch URL http://pypi.python.org/simple/: There was a problem confirming the
ssl certificate: [Errno 1] _ssl.c:509: error:14090086:SSL
routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

用点子?

我已尝试将设置添加到 $HOME/.pip/pip.conf

[global]
cert = /etc/ssl/certs/mycorporatecert.pem

还有

谢谢

【问题讨论】:

    标签: python ubuntu ssl pip


    【解决方案1】:

    我不知道是否一直都是这样,但我发现我还需要设置 REQUESTS_CA_BUNDLE 环境变量,大概是因为 pip 使用请求并且不会将所有配置传递给它。

    【讨论】:

      【解决方案2】:

      尝试更新您的代理变量,如此处所示的 http_proxy 和 https_proxy

      https://askubuntu.com/questions/228530/updating-http-proxy-environment-variable

      您应该需要证书(或上面声明的全局证书)以及代理。设置变量的替代方法是从命令行使用它,例如 [user:passwd@]proxy.server:port

      pip install --proxy http://proxy.company.com:80 <package>
      

      【讨论】:

        【解决方案3】:

        我猜你必须使用pip--cert 选项。

        --cert <path>               Path to alternate CA bundle.
        

        文档中没有说明您可以在pip.conf 配置文件中使用cert= 选项。见:https://pip.pypa.io/en/stable/reference/pip/?highlight=proxy#cmdoption-cert

        【讨论】:

          【解决方案4】:

          尽管文档可能会说将cert = PATH_TO_CERTIFICATE_FILE 放在pip.confpip.ini 中确实对我有用,至少对于带有pip 9.0.1 的本机Windows Python 2.7.13。

          顺便说一句:在 Windows 上,配置文件位于 %APPDATA%\pip\pip.ini 中,可能必须手动创建(包括 pip 目录)。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2019-07-21
            • 2020-10-31
            • 2021-12-20
            • 2011-11-10
            • 1970-01-01
            • 1970-01-01
            • 2019-03-26
            相关资源
            最近更新 更多