SSL_connect SYSCALL retourné = 5 errno = 0 état = SSLv2 / v3 serveur de lecture bonjour A
J'ai un rubis client qui se connecte à un serveur exchange à l'aide du protocole IMAP & SSL. J'utilise le Rubis Net::IMAP bibliothèque (qui utilise openssl sous les couvertures) pour se connecter. Son été à travailler pendant des mois. Le serveur exchange admin installé de nouveaux cert de godaddy et maintenant j'ai cette erreur:
SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A
Personne ne sait ce que cette erreur signifie? (J'ai essayé de googler)
Je soupçonne qu'il ya un problème avec le nouveau certificat qui cause cela, mais je ne sais pas comment le résoudre.
Je sais aussi que vous pouvez désactiver la vérification du certificat lors de l'utilisation de NET:HTTP par:
http.verify_mode = OpenSSL::SSL::VERIFY_NONE if http.use_ssl?
mais je ne peux pas comprendre comment le faire en utilisant le NET:IMAP. Je veux désactiver pour voir si ce n'est le problème.
Que pour le code im en utilisant:
Im en utilisant cette(ou très proche) http://github.com/look/fetcher/blob/master/lib/fetcher/imap.rb
J'ai essayé de changer :
@connexion = Net::IMAP.nouveau(@serveur, @port, @ssl, néant, false)
Ici est la 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'
source d'informationauteur Joelio | 2010-08-17
Vous devez vous connecter pour publier un commentaire.
J'ai reçu cette erreur en essayant de se connecter à dynamoDB avec rails 3, en utilisant la configuration par défaut.
La Solution était d'ajouter
à la
initialiseur
De cette écriture de ce correctif est dans un dissociées de la branche du gem.
Bien il s'avère que la cause était ms exchange a été mal configuré. J'aimerais avoir appris plus sur les erreurs ssl et comment troublshoot, mais je juste n'ai pas beaucoup d'info sur ce.
Je l'ai fait essayer à juste troublshoot ce à l'aide d'open ssl, pour info, vous pouvez le faire:
OpenSSL> s_client -connect monserveur:993
Quand il a été brisé, j'ai reçu ce message d'erreur:
CONNECTÉ(00000003)
26831:erreur:140790E5:SSL routines:SSL23_WRITE:ssl handshake
échec:s23_lib.c:188:
Une fois que nous avons fixé, j'ai reçu un cert et la poignée de main du message etc.
Voici ce que ma exchange admin a dit qu'il a fait: "je suis juste allé pour le protocole IMAP et est allé à l'onglet accès. Puis le bouton certificats. À partir de là, j'ai choisi de remplacer le cert et choisi la nouvelle cert."
Selon la la documentationvous pouvez définir la vérification SSL à aucun lors de l'instanciation Net:IMAP
Vous pouvez également pointer sur une copie locale de la CA cert avec le
certs
option.remarque: je n'ai pas essayé moi-même...