orb*_*ion 7 python ubuntu ssl pip
问题是,如何在Ubuntu Trusty上使用pip安全地安装软件包?当然,我需要澄清为什么我认为它不安全.
urllib3给出了一个InsecurePlatformWarning如果你在Python 2.7.9之前没有安装一些额外的openssl相关python库的情况下发出https请求.这是一个完善的问答:
InsecurePlatformWarning:真正的SSLContext对象不可用.这可以防止urllib3正确配置SSL
问题是,如果您安装pip版本6左右,它会在您安装任何内容时开始向您发出此警告.从阅读问题的官方答案:
https://urllib3.readthedocs.org/en/latest/security.html#pyopenssl
听起来问题在于Python ssl库.Pip是否在最新版本中从openssl切换到Python ssl库?我的猜测(也许是一个糟糕的猜测)是pip之前使用过Python库,它只是使用了一个甚至没有发出警告的旧版urllib.所以它一直都是不安全的(尽管特别关注的特殊情况似乎有些近期).
好吧,如果是这样的话,Ubuntu上的pip库存版本是不安全的.我无法使用它来安全地安装这些东西以确保安全.无论如何,我可以从Ubuntu的repo安装相同的东西,它使用GPG验证包:
http://packages.ubuntu.com/search?keywords=python-ndg-httpsclient
除上述内容外,仅适用于Utopic.在Trusty上,我似乎陷入困境.
那是什么交易?我是否必须掷骰子并不安全地安装这个东西一次,然后才安全地使用pip?或者我是否完全误读了这种情况?
pip默认使用标准库ssl模块(除非你还安装了你提到的额外库).在Python 2.7.9和Python 3.2之前(我认为它是3.2,可能是3.1)标准库中的ssl模块缺乏控制与ssl相关的某些设置的能力.
其中一些设置:
至于你应该做什么,这取决于你.如果您从PyPI本身进行安装,很多这些事情并不重要,因为我们在服务器端禁用它们而不是依靠客户端来实现它们.然而,请求(底层库pip用于访问存储库)会引发这些警告(并且pip不会使它们静音),因为PyPI通常不是您要连接的唯一地方,而这些额外的地方可能会也可能不会PyPI具有相同的预防措施.
资料来源:我是PyPI的核心开发人员和管理员.
| 归档时间: |
|
| 查看次数: |
1482 次 |
| 最近记录: |