2012-09-24 7 views
2

내 환경을 확인 실패, 은 OpenSSL : SSL은 :: SSLError SSL_connect는 SSLv3에 서버 인증서 B를 읽을 = 1 개의 errno = 0 상태를 반환 인증서가

% openssl version 
OpenSSL 0.9.8r 8 Feb 2011 
% curl --version 
curl 7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0 OpenSSL/0.9.8r zlib/1.2.5 
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp smtp smtps telnet tftp 
Features: AsynchDNS GSS-Negotiate IPv6 Largefile NTLM NTLM_WB SSL libz 
% rails -v 
Rails 3.0.3 
% ruby -v 
ruby 1.9.2p320 (2012-04-20 revision 35421) [x86_64-darwin12.2.0] 
% rvm --version 
rvm 1.15.0 (latest) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/] 

omniauth version is '0.2.6' 

다음 내가 omniauth와 페이스 북을 통해 로그인하고 다음을 얻을 오류.

OpenSSL::SSL::SSLError 
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed 

이 문제를 해결하려고했습니다.

는 ~/.zshrc

export CURL_CA_BUNDLE='/System/Library/OpenSSL/certs/cert.pem' 

내가 사용 사제에 한 줄을 추가합니다. curl-config --ca는 빈 행을 표시합니다.

% curl-config --ca 
(empty output) 

이 문제를 어떻게 해결할 수 있습니까?

미리 감사드립니다.

답변

6

, 다음을 사용 : 아직도 않으면

http://railsapps.github.com/openssl-certificate-verify-failed.html

: 여기 당신을 위해 작동 할 수 있습니다 솔루션 무리가있다

rvm remove 1.9.3 
brew install openssl 
rvm install 1.9.3 --with-openssl-dir=`brew --prefix openssl` 
+0

고맙습니다 !!!이 솔루션으로 제 문제를 해결할 수 있습니다. –

1

두 가지 도움이 될만한 정보가 있습니다. 먼저 명령 행에서 openssl을 사용하여 인증서가 제대로 연결되어 있는지 테스트 할 수 있습니다. 예를 들어 :

openssl verify -CAfile your-bundle.crt your.crt 

이 번들로 페이스 북에서 공개 키를 추가 포함 할 수있다, 그러나 당신이 사용하고있는 인증서의 자세한 내용은없이 말을하기 어렵다. 둘째, CURL_CA_BUNDLE을 내보내는 올바른 경로에 있습니다. 체인이 올바르면 다른 옵션은 몇 가지 명령 행 옵션과 함께 말풍선을 사용하는 것입니다. 예 :

curl --verbose --head https://example.com:443/ --cert ./testclient.crt --key testclient.key --cacert test-bundle.crt 

죄송합니다. 질문의 옴니아 편을 도와 드릴 수 없습니다. 행운을 빕니다! 당신은 양조 및 RVM을 사용하는 경우

+0

재생 해 주셔서 감사합니다. % openssl verify -CAfile cacert.pem cert.pem cert.pem : OK 두 번째 명령을 시도했지만 "testclient.key"의 위치를 ​​이해할 수 없습니다. –

2

Rahul의 대답은 rvm SSL 폴더에있는 인증서를 강제로 다운로드해야한다는 것을 제외하고는 거의 나를 위해 일했습니다.

rvm pkg install openssl 
rvm install 1.9.3-p374 –with-openssl-dir=$rvm_path/usr 
cd $rvm_path/usr/ssl 
curl -O http://curl.haxx.se/ca/cacert.pem 
mv cacert.pem cert.pem 

도움이 되었으면 빈센트

관련 문제