gsutil ssl.SSLError:[Errno 185090050]
Posted
技术标签:
【中文标题】gsutil ssl.SSLError:[Errno 185090050]【英文标题】:gsutil ssl.SSLError: [Errno 185090050] 【发布时间】:2015-10-28 22:53:01 【问题描述】:我试图让gsutil
在我的机器上工作,但它总是失败并出现以下错误:
ssl.SSLError: [Errno 185090050] _ssl.c:358: error:0B084002:x509 certificate routines:X509_load_cert_crl_file:system lib
对于其他 python 应用程序,有很多关于此错误的帖子,其中解决方案涉及编辑源代码。如果源代码是问题,那么gsutil
开发人员需要了解它,但他们不会宣传用户将如何发布错误。
我可能在安装gsutil
时出错。也许我需要获得证书并进行设置?但我不知道该怎么做。
我确实设法通过在.boto
文件中禁用服务器身份验证来解决这个问题。但是为了安全起见,我更愿意让身份验证工作。
希望有一些人可以帮助我解决这个问题。
【问题讨论】:
您可以将 gsutil 错误发布到 github.com/GoogleCloudPlatform/gsutil/issues 您能否提供运行 gsutil -d部分更新将解决问题
方法一 如果你使用 gsutil 源代码,那么
仅更新 httplib2 包 https://github.com/httplib2/httplib2
或者
仅更新 httplib2 包内的证书 https://github.com/httplib2/httplib2/blob/master/python2/httplib2/cacerts.txt
方法二
为 boto.xt 文件指定系统证书 https://github.com/fout/fout/blob/master/review/google_snippet_status/templates/boto.xt
https_validate_certificates = True
ca_certificates_file = /etc/ssl/certs/ca-bundle.crt
参考:http://boto.cloudhackers.com/en/latest/boto_config_tut.html
**注意:** 就我而言: 如果我使用像“ca_certificates_file = system”这样的系统,它会给出一些套接字错误
Caught socket error, retrying: [Errno 185090050] _ssl.c:330: error:0B084002:x509 certificate routines:X509_load_cert_crl_file:system lib
Retrying request to url <https://www.googleapis.com/storage/v1/b/adx-rtb-freakout-vd/o? projection=full&prettyPrint=True&versions=False&fields=prefixes%2CnextPageToken%2Citems%2Fname&prefix=snippet_status&maxResults=500&delimiter=%2F&alt=json> after connection break.
Caught socket error, retrying: [Errno 185090050] _ssl.c:330: error:0B084002:x509 certificate routines:X509_load_cert_crl_file:system lib
连接中断后重试对 url https://www.googleapis.com/storage/v1/b/adx-rtb-freakout-vd/o?projection=full&prettyPrint=True&versions=False&fields=prefixes%2CnextPageToken%2Citems%2Fname&prefix=snippet_status&maxResults=500&delimiter=%2F&alt=json 的请求。
注意:最好使用最新的 gsutil 和 Python 2.7.X
【讨论】:
【参考方案2】:我今天在编写 Web 应用程序时在我的 Linux 机器上遇到了这个问题。对于它的价值,这是我的解决方案:
chmod a+r /usr/lib/python2.7/site-packages/httplib2-0.9.2-py2.7.egg/httplib2/cacerts.txt
【讨论】:
以上是关于gsutil ssl.SSLError:[Errno 185090050]的主要内容,如果未能解决你的问题,请参考以下文章
ssl.SSLError: [SSL: WRONG_VERSION_NUMBER] 线程化时的 Gmail
Rails 3:OpenSSL::SSL::SSLError:主机名与服务器证书不匹配
Heroku上的OpenSSL :: SSL :: SSLError [重复]
使用 Ruby on Rails 的 HTTP GET 请求:OpenSSL::SSL::SSLError
如何让 python 信任我服务器的 TLS 自签名证书:ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] 证书验证失败