我与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
答案 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