我正在尝试建立一个到远程服务器的ssh隧道,如下所述:使用Mysql Db从Heroku到远程服务器的ssh
但我只是想下载这些宝石就挂断了。我补充说:
# file: Gemfile
...
gem 'net-ssh-gateway', '~> 1.2.0'
但是,当我执行bundle安装
(甚至只是在命令行上执行gem install net ssh
)时,我会得到:
ERROR: Could not find a valid gem 'net-ssh' (>= 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://api.rubygems.org/latest_specs.4.8.gz)
根据NetSSH的自述文件(https://github.com/net-ssh/net-ssh),我检查了Ruby的OpenSSL绑定--它们看起来不错:
$ ruby -ropenssl -e 'puts OpenSSL::OPENSSL_VERSION'
OpenSSL 1.0.1j 15 Oct 2014
我不确定这是否相关,但当我尝试下载时。pem文件用于高安全性的GEM文件下载:
$ curl -O https://raw.github.com/net-ssh/net-ssh/master/gem-public_cert.pem
... 它没有下载。pem文件,访问URL直接导致“未找到”。
其他资料:
$ rake about
About your application's environment
Ruby version 2.1.4-p265 (x86_64-darwin14.0)
RubyGems version 2.2.2
Rack version 1.5
Rails version 4.1.7
所以现在,我被困住了。有人认识到这个问题吗?
嘿,每个人都遵循这个链接,这样你就不必每次都手动安装了。
这说明问题来自rubygems对ssl证书的更改。NVM链接最能解释它:p
尽管@TheTinMan给出了有用的答案,但我的问题是我没有在OpenSSL可以找到的地方设置证书。
安装rubygems时SSL错误中的以下建议,无法从中提取数据'https://rubygems.org/:
你可以通过改变第一行的gefile来解决这个问题
source 'https://rubygems.org'
到非https表单:
source 'http://rubygems.org'
然后执行常规的捆绑安装
。之后,您应该恢复文件的第一行以使用https表单。这通常被认为是一种安全风险。
此外,您还没有真正解决缺乏有效证书的真正问题,如果您的应用程序调用使用OpenSSL(例如net-ssh),您将遇到麻烦。
请参阅安装rubygems时出现的SSL错误,无法从中提取数据'https://rubygems.org/.对于OS X用户,我们要求Ruby告诉我们它在哪里查找证书文件,然后使用security find certificate
填充证书文件:
$ cert_file=$(ruby -ropenssl -e 'puts OpenSSL::X509::DEFAULT_CERT_FILE')
$ echo $cert_file
$ html" target="_blank">security find-certificate -a -p /Library/Keychains/System.keychain > "$cert_file"
$ security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain >> "$cert_file"
在我这样做之后,我能够调用bundle install
,没有错误。
这对我的情况很有帮助,当我在证书方面遇到问题时:
gem sources -r https://rubygems.org
gem sources -a http://rubygems.org
gem update --system
gem sources -r http://rubygems.org
gem sources -a https://rubygems.org
安装NoDJS、Ruby和Git + Buver后,尝试安装基础。 我一直收到以下错误,我不知道如何修复它: 找不到有效的宝石'基础'( 有什么想法吗?
错误:找不到有效的gem“rhc”( 尝试使用以下命令: 但仍然存在相同的错误时,试图设置rhc。 通过执行这些步骤,rhc gem安装成功,但是当执行“rhc设置”以连接到openshift时,这里显示的是错误消息,而不是连接到openshift服务器
您好,我在构建python映像时遇到问题 错误说, 但是当升级pip时,同样的错误显示。 错误:由于环境原因无法安装程序包错误:HTTPSConnectionPool(host='files.pythonhosted.org',port=443):url超过最大重试次数:/packages/ac/cf/0cc542fc93de2f3b9b53cb979c7d118cffb93204afb4629a
问题内容: 我有一个Web应用程序,要求客户端发送其证书,并且服务器必须验证证书(即查看颁发者是否为有效的颁发者,并存在于服务器的信任库中)。这是代码: 但是我有一个例外: 注意: 此处,客户端发送的证书为client.crt,用于签署client.crt证书的证书为密钥库“ trustedca”中的ca.crt。那为什么给这个例外呢? 问题答案: 如果您希望获得客户证书,请让JSSE为您完成所有
我有麻烦,同时使用Java发送电子邮件到Zimbra邮件服务器运行异常。 这是我的类 我在我的“主”线程中得到了以下RuntimeException堆栈跟踪。
我最近为我的maven repo(Apache代理背后的人工制品)切换到了letsencrypt证书。通过浏览器访问回购协议工作正常,证书没有问题(下面的屏幕截图)。 如果我手动将证书导入到java密钥库中,它也可以工作。 但是根据这个SO问题,Java应该接受以8u101开头的lets加密证书。 我总是遇到这样的例外: