OSX Yosemite和RVM破解SSL

时间:2016-12-12 10:16:18

标签: ssl openssl rvm osx-yosemite yosemite

我的操作系统是OS X Yosemite(10.10.5),我已经安装了RVM来管理ruby版本和gemsets。我正在使用不同的gemsets并且我随机地遇到SSL问题(最常见的是当我重新启动并更改gemset时)。例如,这是我在做bundle时遇到的错误:

  

https://rubygems.org/

获取源索引      

由于错误(2/4)重试抓取器:   Bundler :: Fetcher :: CertificateFailureError无法验证SSL   https://rubygems.org/的证书。你有机会   经历了一次中间人攻击,但很可能是你的系统   没有验证所需的CA证书。对于   有关OpenSSL证书的信息,请参阅http://railsapps.github.io/openssl-certificate-verify-failed.html。至   不使用SSL连接,编辑Gemfile源并进行更改   ' HTTPS'到' http'。由于错误而重试抓取器(3/4):   Bundler :: Fetcher :: CertificateFailureError无法验证SSL   https://rubygems.org/的证书。你有机会   经历了一次中间人攻击,但很可能是你的系统   没有验证所需的CA证书。对于   有关OpenSSL证书的信息,请参阅http://railsapps.github.io/openssl-certificate-verify-failed.html。至   不使用SSL连接,编辑Gemfile源并进行更改   ' HTTPS'到' http'。由于错误而重试抓取器(4/4):   Bundler :: Fetcher :: CertificateFailureError无法验证SSL   https://rubygems.org/的证书。你有机会   经历了一次中间人攻击,但很可能是你的系统   没有验证所需的CA证书。对于   有关OpenSSL证书的信息,请参阅http://railsapps.github.io/openssl-certificate-verify-failed.html。至   不使用SSL连接,编辑Gemfile源并进行更改   ' HTTPS'到' http'。无法验证SSL证书   https://rubygems.org/。你有可能遇到一个   中间人攻击,但很可能你的系统没有   验证所需的CA证书。有关OpenSSL的信息   证书,请参阅http://railsapps.github.io/openssl-certificate-verify-failed.html。不使用连接   SSL,编辑您的Gemfile源并更改' https'到' http'。

我多次尝试过来自RVM网站(fixing-broken-certificates)的建议而没有任何运气,似乎临时修复它的唯一方法就是这个命令: curl https://curl.haxx.se/ca/cacert.pem -o "$(ruby -ropenssl -e 'puts OpenSSL::X509::DEFAULT_CERT_FILE')"(下载并放置特定证书)。

但过了一会儿(重启和ruby / gemset更改),它再次失败。任何的想法?其他人有类似的问题吗?

1 个答案:

答案 0 :(得分:1)

如果您仍然遇到此问题,请尝试以下解决方案:

rvm install 2.3.0 --disable-binary

我还成功地将SSL_CERT_FILE环境变量指向本地版本的cacert.pem。如果使用上述解决方案重新安装Rubies不起作用,您可以尝试一下。