Tôi có một khách hàng ruby kết nối với máy chủ trao đổi bằng cách sử dụng SSL & SSL. Tôi sử dụng thư viện Ruby Net :: IMAP (sử dụng openssl trong phần cover) để kết nối. Nó hoạt động tốt trong nhiều tháng. Quản trị viên máy chủ trao đổi đã cài đặt chứng chỉ mới từ godaddy và giờ tôi nhận được lỗi này:SSL_connect SYSCALL trả về = 5 errno = 0 state = SSLv2/v3 đọc máy chủ hello A
SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A
Có ai biết lỗi này có nghĩa là gì không? (Tôi đã cố gắng googling)
Tôi nghi ngờ có một vấn đề với cert mới gây ra điều này, nhưng tôi không biết làm thế nào để khắc phục sự cố.
Ngoài ra tôi biết bạn có thể vô hiệu hóa xác minh giấy chứng nhận khi sử dụng NET: HTTP bằng cách thực hiện:
http.verify_mode = OpenSSL::SSL::VERIFY_NONE if http.use_ssl?
nhưng tôi không thể tìm ra cách để làm điều này bằng NET: IMAP. Tôi muốn vô hiệu hóa điều này để xem đây có phải là vấn đề không.
Như cho mã im sử dụng: Im sử dụng này (hoặc rất gần với điều này) http://github.com/look/fetcher/blob/master/lib/fetcher/imap.rb
Tôi đã cố gắng thay đổi để: @connection = Net :: IMAP.new (@server, @port, @ssl , nil, false)
đây là stacktrace
checking emails on: Tue Aug 17 20:48:01 +0000 2010
rake aborted!
SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A
/usr/lib/ruby/1.8/net/imap.rb:904:in `connect'
/usr/lib/ruby/1.8/net/imap.rb:904:in `initialize'
/u/apps/aras/releases/20100728212439/vendor/plugins/fetcher/lib/fetcher/imap.rb:34:in `new'
/u/apps/aras/releases/20100728212439/vendor/plugins/fetcher/lib/fetcher/imap.rb:34:in `establish_connection'
/usr/lib/ruby/gems/1.8/gems/system_timer-1.0/lib/system_timer.rb:28:in `timeout_after'
/u/apps/aras/releases/20100728212439/vendor/plugins/fetcher/lib/fetcher/imap.rb:33:in `establish_connection'
/u/apps/aras/releases/20100728212439/vendor/plugins/fetcher/lib/fetcher/base.rb:31:in `fetch'
Bạn đã thử tăng giá trị timeout_call (có thể không phải là vấn đề)? Ngoài ra, tôi cho rằng bạn đã thử nghiệm kết nối với máy chủ IMAP với một ứng dụng khách IMAP khác và đã xác minh nó đã hoạt động, đúng không? – Brian
Đã cố gắng tăng thời gian chờ nhưng không thành công. Haven đã thử một khách hàng khác, nhưng điều này đã làm việc trước khi họ thực hiện thay đổi trên máy chủ. – Joelio
Tôi muốn kiểm tra lại với một khách hàng khác và/hoặc kiểm tra chứng chỉ để đảm bảo không có gì sai trái với nó (như tên máy chủ trên cert không khớp với tên máy chủ bạn đang kết nối). – Brian