gpt4 book ai didi

python - SSL 错误不安全旧版重新协商已禁用

转载 作者:行者123 更新时间:2023-12-04 22:41:37 35 4
gpt4 key购买 nike

我正在运行一个 Python 代码,我必须从 HTTPSConnectionPool(host='ssd.jpl.nasa.gov', port=443) 获取一些数据。但是每次我尝试运行代码时,都会出现以下错误。我在 MAC OS 12.1

raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='ssd.jpl.nasa.gov', port=443): Max retries exceeded with url: /api/horizons.api?format=text&EPHEM_TYPE=OBSERVER&QUANTITIES_[...]_ (Caused by SSLError(SSLError(1, '[SSL: UNSAFE_LEGACY_RENEGOTIATION_DISABLED] unsafe legacy renegotiation disabled (_ssl.c:997)')))
我真的不知道如何绕过这个问题..谢谢你的帮助!

最佳答案

警告:启用 Legacy Unsafe Renegotiation 时,SSL 连接将容易受到 Man-in-the-Middle 前缀攻击,如 CVE-2009-3555 中所述。 .
https://bugs.launchpad.net/bugs/1963834 的帮助下
https://bugs.launchpad.net/ubuntu/+source/gnutls28/+bug/1856428
请注意,不建议编辑系统的 openssl.conf,因为一旦更新 openssl,您可能会丢失更改。
创建自定义openssl.cnf包含以下内容的任何目录中的文件:

openssl_conf = openssl_init

[openssl_init]
ssl_conf = ssl_sect

[ssl_sect]
system_default = system_default_sect

[system_default_sect]
Options = UnsafeLegacyRenegotiation
在运行您的程序之前,请确保您的 OPENSSL_CONF环境变量设置为您的自定义 openssl.cnf像这样运行刮板时的完整路径:
OPENSSL_CONF=/path/to/custom/openssl.cnf python your_scraper.py
或者像这样:
export OPENSSL_CONF=/path/to/custom/openssl.cnf
python your_scraper.py
或者,如果您使用的是 pipenv 或 systemd 或 docker,请将其放入您的 .env文件
OPENSSL_CONF=/path/to/custom/openssl.cnf

关于python - SSL 错误不安全旧版重新协商已禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72629471/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com