法拉第ssl3密码

时间:2015-04-29 23:55:17

标签: ruby curl faraday

我与curl有一个工作连接,基本上我需要指定-ssl3作为密码套件用作tls1或任何其他密码导致服务器失败hello握手。有效的curl命令:

curl https://10.10.10.10/soap/rpc -k -v -ssl3 --cert /etc/ssl/mwlang.crt --key /etc/ssl/mwlang.key

我确实用curl确定其他密码套件的存在导致握手失败,但我不确定如何用法拉​​第指定ssl3密码......到目前为止我的尝试:

SSL_OPTS = {:verify => false,
  :ca_path => "/usr/lib/ssl/certs",
  :client_cert  => OpenSSL::X509::Certificate.new(File.read("/etc/ssl/mwlang.crt")),
  :client_key   => OpenSSL::PKey::RSA.new(File.read("/etc/ssl/mwlang.key")),
}

Faraday.new(:url => 'https://10.10.10.10', :ssl => SSL_OPTS) do |faraday|
  faraday.adapter Faraday.default_adapter
end

1 个答案:

答案 0 :(得分:0)

限制密码套件的正确方法取决于法拉第使用的适配器。对于默认适配器,“version”键应设置为:SSLv3

SSL_OPTS = {:verify => false,
  :ca_path => "/usr/lib/ssl/certs",
  :client_cert  => OpenSSL::X509::Certificate.new(File.read("/etc/ssl/mwlang.crt")),
  :client_key   => OpenSSL::PKey::RSA.new(File.read("/etc/ssl/mwlang.key")),
  :version => :SSLv3
}

Faraday.new(:url => 'https://10.10.10.10', :ssl => SSL_OPTS) do |faraday|
  faraday.adapter Faraday.default_adapter
end

正如其他人向我指出的那样,SSLv3受到POODLE漏洞的影响。如果您仅使用SSLv3密码,请注意这一点:https://www.us-cert.gov/ncas/alerts/TA14-290A