2015-04-29 25 views
0

我有一個與curl工作連接,基本上要求我指定-ssl3作爲tls1或任何其他密碼使用的密碼套件會導致服務器無法握住您的握手。 curl命令的作品:法拉第ssl3密碼

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

我沒有確定的捲曲度,其他的密碼套件的存在會導致握手失敗,但我不知道如何與法拉第指定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

限制密碼套件的正確方法取決於用於法拉第的適配器。對於默認的適配器,「版本」鍵應設置爲: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受到獅子狗漏洞。如果您僅使用SSLv3密碼,請注意這一點:https://www.us-cert.gov/ncas/alerts/TA14-290A