OpenSSLのアップデートによりRubyのSSL接続でエラーが出る件
環境
・Mac OS X 10.7
・rvm 1.16.6
・ruby 1.9.3
OpenSSL 1.x環境だと、以下のようなエラーが出るらしい
/Users/katoken/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:799:in `connect': Connection reset by peer - SSL_connect (Errno::ECONNRESET) from /Users/katoken/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:799:in `block in connect' from /Users/katoken/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/timeout.rb:54:in `timeout' from /Users/katoken/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/timeout.rb:99:in `timeout' from /Users/katoken/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:799:in `connect' from /Users/katoken/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:755:in `do_start' from /Users/katoken/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:744:in `start'
こうすると良いと書いてあったが、
相変わらずエラーのままだった。
$ rvm pkg install openssl $ rvm reinstall 1.9.3 --with-openssl-dir=~/.rvm/usr
最終的には、以下のようにして無事接続することができた。
http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_PEER http.ssl_version = :SSLv3 #ここ