ruby on rails - SSL_connect returned=1 errno=0 state=SSLv3 r



在Mac OSX 10.7.5上使用Homebrew

<>之前$ brew安装openssl错误:openssl-1.0.1e已经安装$ rake test.rakerake流产!SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B:证书验证失败之前

我承认还有其他类似标题中的问题,但没有一个解决方案似乎有效。我在不同的地方尝试过,但都没有成功:

<>之前RVM PKG安装opensslRVM install 1.9.3——with-openssl-dir=$rvm_path/usr之前<>之前RVM remove 1.9.3Brew安装opensslRVM install 1.9.3——with-openssl-dir= ' brew——prefix openssl '之前

我决定检查openssl版本,并注意到这个:

<>之前$ openssl versionOpenSSL 0.9.8r 2011年2月8日之前

希望这确实是问题所在,修复就像确保我的笔记本电脑检测到正确的OpenSSL一样简单。

但是我如何解决这个问题,所以我让它使用Homebrew的新OpenSSL代替?

使用rvm可以正常工作

$ rvm osx-ssl-certs status all
$ rvm osx-ssl-certs update all

基于mpapi的答案,我执行了这些为我解决问题的命令。

$ cd ~
$ rvm get head
$ rvm requirements
这给了我两个关键的反馈:
Upgrade of RVM in /Users/myuser/.rvm/ is complete.
RVM Reloaded!

Installing requirements for osx, might require sudo password.
Updating certificates in '/usr/local/etc/openssl/cert.pem'.

之后,我再也没有得到错误了

您需要更新证书:

sudo curl http://curl.haxx.se/ca/cacert.pem -o "$(ruby -ropenssl -e "p OpenSSL::X509::DEFAULT_CERT_FILE")"

虽然这被认为是不安全的,因为证书是在没有https的情况下下载的,并且没有办法知道它们是否在途中被更改。

RVM已经更新了代码,它将使用OSX证书来更新文件,并将自动拉出依赖项,您可以通过以下方式获取:

rvm get head
rvm install 1.9.3

在我的MAC上运行10.8.3我也有这个问题,但是我有一个问题与上述解决方案,因为当我试图这样做RVM获取头1.9.3安装

rvm requirements 

我得到错误运行' requients_osx_brew_libs_install…这本身就是一场噩梦,参见错误运行'requirements_osx_brew_libs_install…'

不管怎样,我通过

让它工作
wget http://curl.haxx.se/ca/cacert.pem > 
mv cacert.pem /Users/USER/.rvm/usr/ssl/cert.pem

最新更新