首页 文章

google cloud python sdk安装错误 - SSL认证错误

提问于
浏览
1

尝试在Windows 10上为所有用户安装Google Cloud SDK(Python) . 得到以下错误 .

这是新机器,开始新鲜建设 . 在此之前安装了python 2.7版本 .

请帮我解决这个问题 .

输出文件夹:C:\ Program Files(x86)\ Google \ Cloud SDK下载Google Cloud SDK核心 . 提取Google Cloud SDK核心 . 创建Google Cloud SDK bat文件:C:\ Program Files(x86)\ Google \ Cloud SDK \ cloud_env.bat安装组件 . 欢迎使用Google Cloud SDK!这将安装使用Google Cloud Platform所需的所有核心命令行工具 . 回溯(最近一次调用最后一次):文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ bin \ bootstrapping \ install.py”,第214行,在main()文件“C: \ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ bin \ bootstrapping \ install.py“,第192行,主安装(pargs.override_components,pargs.additional_components)文件”C:\ Program Files( x86)\ Google \ Cloud SDK \ google-cloud-sdk \ bin \ bootstrapping \ install.py“,第134行,安装InstallOrUpdateComponents(to_install,update = update)文件”C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ bin \ bootstrapping \ install.py“,第177行,在InstallOrUpdateComponents [' - quiet','components',verb,' - allow-no-backup'] component_ids)文件”C :\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ calliope \ cli.py“,第813行,执行self._HandleAllErrors(exc,command_path_string,specified_arg_names)文件”C:\程序文件(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ calliope \ cli.py“,第787行,在E中xecute resources = args.calliope_command.Run(cli = self,args = args)文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ calliope \ backend.py”,第754行,在运行资源= command_instance.Run(args)文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ surface \ components \ update.py”,第99行,在运行version = args.version)文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ updater \ update_manager.py”,第850行,在Update command_path =' components.update')文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ updater \ update_manager.py”,第591行,_GetStateAndDiff command_path = command_path文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ updater \ update_manager.py”,第574行,_GetLatestSnapshot * effective_url.split(','),command_path = command_path)文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ updater \ s napshots.py“,第165行,在FromURLs中为URL中的url”文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ updater \ snapshots.py”,第186行,在_DictFromURL响应= installers.ComponentInstaller.MakeRequest(url,command_path)文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ updater \ installers.py “,第285行,在MakeRequest中返回ComponentInstaller._RawRequest(req,timeout = timeout)文件”C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ updater \ installers . py“,第329行,_RawRequest should_retry_if = RetryIf,sleep_ms = 500)文件”C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ util \ retry.py“ ,第155行,在TryFunc中返回func(* args,kwargs),无文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ url_opener.py”,line 73,在urlopen中返回opener.open(req,data,timeout)文件“c:\ users \ cpa8161 \ appdata \ local \ temp \ tmpxcdi vh \ python \ lib \ urllib2.py“,第429行,打开响应= self._open(req,data)文件”c:\ users \ cpa8161 \ appdata \ local \ temp \ tmpxcdivh \ python \ lib \ urllib2.py “,第447行,在_open'_open',req)文件”c:\ users \ cpa8161 \ appdata \ local \ temp \ tmpxcdivh \ python \ lib \ urllib2.py“,第407行,在_call_chain result = func(* args) )文件“C:\ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ googlecloudsdk \ core \ url_opener.py”,第58行,在https_open中返回self.do_open(build,req)文件“ c:\ users \ cpa8161 \ appdata \ local \ temp \ tmpxcdivh \ python \ lib \ urllib2.py“,第1195行,在do_open h.request(req.get_method(),req.get_selector(),req.data,headers )文件“c:\ users \ cpa8161 \ appdata \ local \ temp \ tmpxcdivh \ python \ lib \ httplib.py”,第1042行,请求self._send_request(方法,url,正文, Headers )文件“c:\ users \ cpa8161 \ appdata \ local \ temp \ tmpxcdivh \ python \ lib \ httplib.py”,第1082行,在_send_request self.endheaders(body)文件“c:\ users \ cpa8161 \ appdata \ local \ temp” \ tmpxcdivh \ python \ lib \ httplib.py“,第1038行,在endheaders中self._send_output(message_body)文件”c:\ users \ cpa8161 \ appdata \ local \ temp \ tmpxcdivh \ python \ lib \ httplib.py“,line 882,在_send_output self.send(msg)文件“c:\ users \ cpa8161 \ appdata \ local \ temp \ tmpxcdivh \ python \ lib \ httplib.py”,第844行,在send self.connect()文件中“C: \ Program Files(x86)\ Google \ Cloud SDK \ google-cloud-sdk \ lib \ third_party \ httplib2__init __ . py“,第1081行,在连接中引发SSLHandshakeError(e)** httplib2.SSLHandshakeError:[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败(_ssl.c:661)安装失败 .

3 回答

  • 3

    你在执行命令'gcloud init'吗?如果您在安装时遇到此问题则会有所不同 . 我直接下载了gcloud存档并解压缩,而不是使用需要我代理后面额外权限的安装程序 .

    我是公司代理的幕后黑手 . 执行该命令时出现以下错误

    Rechecking network connection...done.
    ERROR: Reachability Check still does not pass.
    Cannot reach https://www.google.com (SSLHandshakeError)
    Cannot reach https://accounts.google.com (SSLHandshakeError)
    

    我按照这个程序 . 这也可能对你有帮助 .

    • 导出组织的受信任根证书 .

    enter image description here

    • 使用记事本打开此证书 .

    • 将内容附加到

    \Google\Cloud SDK\google-cloud-sdk-201.0.0-windows-x86_64\google-cloud-sdk\lib\third_party\httplib2\python2\httplib2
    

    请注意我的Gcloud使用的Python版本的路径是2.x.

  • 1

    需要在 ..\google-cloud-sdk\lib\third_party\httplib2\cacerts.txt 文件中添加以下证书 . 然后再次运行 install.bat

    ----BEGIN CERTIFICATE-----\nMIIDJjCCAg6gAwIBAgIIYkBXvgY381UwDQYJKoZIhvcNAQEFBQAwNjE0MDIGA1UE\nAxMrZmVkZXJhdGVkLXNpZ25vbi5zeXN0ZW0uZ3NlcnZpY2VhY2NvdW50LmNvbTAe\nFw0xNzEwMTkxMTQzMzRaFw0xNzEwMjIxMjEzMzRaMDYxNDAyBgNVBAMTK2ZlZGVy\nYXRlZC1zaWdub24uc3lzdGVtLmdzZXJ2aWNlYWNjb3VudC5jb20wggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1XYAow1e/aghfiZY7H2DFJIQ61okNrUfo\n3tdNPtxT1Rr2QyA0Zv/lZ3/Z/Daux/Sb1gvLXBuvLkzVYpu8EHmiMvATK7MD+ZXv\nZTeREh2UB4grlcLq4mc9uTkiARNAhBrEBrYwMeFPQlfc7zB5kiRAZHMhijah/CRg\nw8eVPn09xIJhfsytkFeHoVIz7EV1pD4VNqGZD+P80GEAgVfjh++leqOvCso4CP1G\nYtaOpzPfI03XcH1y0+b+sLTXduOitEyEji5h7aHe2nxbY8JRodsZ8kK1i1W8LpFN\nH+wZwHh/De5Zwoz3HE5EXDgYyaxT26ehqHbPaW4lkKgGDpx6oco5AgMBAAGjODA2\nMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgeAMBYGA1UdJQEB/wQMMAoGCCsG\nAQUFBwMCMA0GCSqGSIb3DQEBBQUAA4IBAQANVlLefEJ9qYboQKBq5ADjftFGWTl8\nhshV+dExMSj+dnXwScdvQcfUrqpxYZWtRP7290FjGHq54AtrPeQrYxffWXkb6OaQ\nel9ZX4IEViJbmCrc52ePxMRnEInrWCV8zZVoej5W63dxGf2x4bVF3o+95hD6Q5l/\nLt59MpY3J88S1x0YbNzYI7PgTBzzyR/o96ULvsKr3o5UmPGim3So4WUEEjtyFACG\nEFXtvc+LtCa9pQcEAcfNnAMl4gXtGVJt/A41JPwMsQtrcBVhpIKgU6bydw+wU9AJ\na6OWmXN360ELmRmDAR1dxZwpPN7YerWG/MbKuMtfO7OM2F9vG95/ve4x\n-----END CERTIFICATE-----
    ----BEGIN CERTIFICATE-----\nMIIDJjCCAg6gAwIBAgIIYf5bBvkimRwwDQYJKoZIhvcNAQEFBQAwNjE0MDIGA1UE\nAxMrZmVkZXJhdGVkLXNpZ25vbi5zeXN0ZW0uZ3NlcnZpY2VhY2NvdW50LmNvbTAe\nFw0xNzEwMjAxMTQzMzRaFw0xNzEwMjMxMjEzMzRaMDYxNDAyBgNVBAMTK2ZlZGVy\nYXRlZC1zaWdub24uc3lzdGVtLmdzZXJ2aWNlYWNjb3VudC5jb20wggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsf1Gm4Sl491iKCsPXa/NQOJvigRF1mb8A\nBnUrnlW/MKgNaYFxPXaJn+7LrvkcsGX6R6h+u2pKHWGBFMQ9TCMmgE29VatoLkd/\nKKcXpoaYhMtjtoZu49HU5+pvew9YanLu5B2mfYOMkBFh86Pegqng2PsKf1Nj8q3g\nnCKfHCQzbYPjne1186RCAao7pOeyFS1boKKZn9ERue9R9ae20R7WcgZZnQmsIHNW\n87ssD9obyux5QAIo2uyZ5YksR6wKkxweFyI7BKy4SMTtgjSvlATw09GSvYEiFuLI\nSwTwr0m3IeM5MczrGkm45GLIXIrhY/24iMqUko4IMKdIB4PZhwu9AgMBAAGjODA2\nMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgeAMBYGA1UdJQEB/wQMMAoGCCsG\nAQUFBwMCMA0GCSqGSIb3DQEBBQUAA4IBAQBV5iX6VGpeUT6ghhDNHFxPQc8G4PR7\ntnSP5p+aK9ieGwaoTDreH9LnypiKBJXP0KPwMfn4G56mu2pNiLjvSCibRTuHS6vN\nOjWDUwADt8VRAWfS+3LaUp3aPpQHbk+UcYXZ/HkpyMpjJnvD32+yEHuGzyK+14+B\nEtTJ+AM0mkldm4f1mrL8/SiWMUuPUGVhaeZXqA0A0Ra4XSL8cBWcj+89lYhN2zcF\nyLPYk3/CyKmq4fu+HrgtP07XiD3OwDOT7cZjMD64EhO5Pxjp1EqDsWllbTN/nCRg\nMmmUjUC5X8JptibPxVJm8QtCUBYLXq9sHhMgkcyZ9oSj6PwD4a4wBMk7\n-----END CERTIFICATE-----
    ----BEGIN CERTIFICATE-----\nMIIDJjCCAg6gAwIBAgIIVaa5+0yJ3V8wDQYJKoZIhvcNAQEFBQAwNjE0MDIGA1UE\nAxMrZmVkZXJhdGVkLXNpZ25vbi5zeXN0ZW0uZ3NlcnZpY2VhY2NvdW50LmNvbTAe\nFw0xNzEwMTgxMTQzMzRaFw0xNzEwMjExMjEzMzRaMDYxNDAyBgNVBAMTK2ZlZGVy\nYXRlZC1zaWdub24uc3lzdGVtLmdzZXJ2aWNlYWNjb3VudC5jb20wggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZSCXl2+w/3ORI3Kp3n5RxTdweNRjo9xth\nwlw4wWC7t782Cw5xzN/FQTgQOHqiSbx6oOJAkU/vXbkcWsE9NprdakDJi2W+9KTv\nMHAj9WzaSMuarfi0g/SCR1bWzQI1h8a52lBBNL+TOg+KFKKQtu7am/m6SW9COfJj\nie8u+ol5FyzjQ5qd2VocmNGgCGD/HhydeU5/9JIhGkHf4fIA4QTTsASqjwB+V7df\nZWel6qJiFpuDZNifz8S8JCwpZhBtoIJDidr32SyprH0k+tpN+7C5HJunGIaxinSb\nTdYKlMLUTVlOVi3h1Gxb6b5wSQkCPzaEgJXoWO2qRnlu0f51SVAxAgMBAAGjODA2\nMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgeAMBYGA1UdJQEB/wQMMAoGCCsG\nAQUFBwMCMA0GCSqGSIb3DQEBBQUAA4IBAQB1D8297ANfncXclhPjm3Cw9+5AGsPX\n5OCF/RKPIJDainsOSMwhiY8fNIEaENMp82N7/16woWoD87UDOxbm2Z5Rfe3sQatv\nL002NXs1y19U7QuhC25cxcgUC0ESxdXnmBHoLJo8ou73GNj4UJEppNWzXxaXCXtC\ncLZWPMsSBG0M9WY9/UQ2P3273SajkSKMNrAwZFzUXvuwDreKHS89Qc44/JaFCCCS\nwe+lXMhRfWNeBCgS+xZGKe8dUjHrGD9c3RrKbDRDZ3XuQXZgd5VfL/GgjJTcDAXA\nw1zzXQWX4Y6DcU+YXuCVVdOFtBC5qrhzLsiJxhFu+LTyJxLGihQuMytu\n-----END CERTIFICATE-----
    
  • 1

    Google的Issue Tracker已报告此错误 .

    此问题是由公司代理背后引起的 . 目前,建议的解决方法detailed here是将公司证书附加到google-cloud-sdk / lib / third_party / httplib2 / cacerts.txt

相关问题