Could not find a valid gem 'rhc'. SSL_connect server certificate verify failed on Windows, Unable to connect OpenShift Server

房东的猫 提交于 2019-12-24 16:22:16

问题


C:\>gem install rhc

ERROR: Could not find a valid gem 'rhc' (>= 0), here is why: Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://rubygems.org/latest_specs.4.8.gz)

tried with the following commands:

gem sources -r https://rubygems.org
gem sources -a http://rubygems.org

But still same error exists when trying to setup rhc.

rhc setup

By following these steps rhc gem is installed successfully, but when executing "rhc setup" for connecting to openshift here is the error message rather connecting to openshift server


回答1:


The problem is that your Windows machine does not recognize the rubygems server certificate as a trusted certificate because Windows don't have its authority certificate present in its trusted certs store.

As a quick fix you'd need to remove the HTTPS version of the rubygems source URL (not HTTP as you did):

gem sources -r https://rubygems.org

This quick fix should make rubygems use the HTTP version which has no certificate checks involved.

But this should not be the definitive fix. Instead you should add the HTTPS source back (using the -a option) and install a proper CA certificate for the rubygems server cert into your windows trusted CA certs store.

There are quite a few pages that deal with this procedure on the net (google this), e.g. the post here has steps to download and install all CA certificates from the curl command, to your Windows machine, that fixes the problem permanently and without lowering security.




回答2:


The reason and fix for the problem is stated here

Previously, this certificate was provided by one Certificate Authority, but the new certificate is provided by a different one.

Because of this, verions of RubyGems with both certificates were released, in an attempt to simplify the change.

However, at the scale RubyGems operates at, it’s impossible to make sure everybody updates the software. There are also operating systems shipping with old versions. As such, sometimes manual intervention (as described above) is required.

This has been described on Issue #1050

To fix the problem, follow these steps:

  1. Download rubygems-update-2.6.7.gem. The download should be saved in a location you can later easily point to. Let's use like C:\rubygems-update-2.6.7.gem

  2. On the command line, run the following commands:
    C:\>gem install --local C:\rubygems-update-2.6.7.gem

    C:\>update_rubygems --no-ri --no-rdoc

  3. Run the following commands to uninstall rubygems-update:
    C:\>gem uninstall rubygems-update -x

This should solve the problem.



来源:https://stackoverflow.com/questions/37253021/could-not-find-a-valid-gem-rhc-ssl-connect-server-certificate-verify-failed-o

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!