2015-01-10 1 views
1

우분투 및 CentOS의 LWP :: UserAgent에서 홀수 차이가있는 것 같습니다. 우분투에Perl LWP :: UserAgent SSL/TLS 일치하지 않는 인증서 오류 메시지 문제

(LWP :: 해당 UserAgent 6.05와 14.04.1), I는 자체 서명 된 인증서가있는 도메인에 연결하려고하면, 내가 500 오류 코드와 함께이 오류 메시지가 얻을 : "

는 수 my.test-domain.com:443에 연결하지 못했습니다. (인증서 확인에 실패했습니다.) "

좋습니다. 정확히 무엇이 잘못되었는지를 알 수 있습니다. 인증서 문제입니다. 하지만 CentOS 7 (LWP :: UserAgent 6.05도 있음)에서 방금 얻은 결과는 다음과 같습니다.

"연결할 수 없습니다 my.test-domain.com:443".

덜 유익한 정보이므로 나에게 문제가 있습니다! 누구든지 CentOS에서 LWP를 걷어차 "인증서 확인 실패"메시지를 얻는 방법을 알고 있습니까?

#!/usr/bin/perl -w 
use strict; 
use LWP::UserAgent; 
my $url='https://my.test-domain.com/'; 
my $browser= LWP::UserAgent->new(); 
my $tryHEAD=$browser->head($url); 
my $responseCode=$tryHEAD->code(); 
if($tryHEAD->code()==200 ) { print "OK\n"; } 
else { print $tryHEAD->code().' '.$tryHEAD->message()."\n"; } 
+0

참조 http://stackoverflow.com/questions/19397346/error-500-cant-connect-to-example-com443-certificate-verify-failed – AKHolland

+0

아마도 IO :: Socket :: SSL의 다른 버전 때문일 수 있습니다. 익숙한. 'perl -MIO :: Socket :: SSL -e '로 IO :: Socket :: SSL-> VERSION''을 확인하십시오. –

+0

@SteffenUllrich - 고마워요. 우분투는 IO :: Socket :: SSL 1.965, CentOS는 1.94를 가졌습니다. 하지만. 나는 둘 다 업그레이드했고, 나는 여전히 같은 문제가있다. (둘 다 2.09) – RichardM

답변

1

그것은 IO :: 소켓 :: (자동 IO :: 소켓 :: SSL에서 사용하는) IP의 버전에 관련된 것 같다 : 여기에 테스트 스크립트입니다. IO :: Socket :: IP 또는 버전 0.31 (그리고 아마도 나중에) 버전 0.25 (우분투 14.04) 동안 그것은 의도대로 작동하지 않습니다. 이는 버전 0.30,0.31의 connect 처리 변경과 관련이 있습니다.

+0

우수. @SteffenUllrich에게 감사합니다. CentOS 7에서 IO :: Socket :: IP 0.21을 가졌습니다. 0.36으로 업그레이드하는 것이 트릭을 만들었습니다. – RichardM

관련 문제