otrzymuję następujący komunikat o błędzie podczas próby nawiązania połączenia z konkretnym stronie https przy użyciu LWP:Instalowanie nowego certyfikatu CA dla Perl 5.14.2 LWP na Ubuntu 12.04
LWP::Protocol::https::Socket: SSL connect attempt failed with unknown errorerror:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed at /usr/local/share/perl/5.14.2/LWP/Protocol/http.pm line 51.
Próbowałem z wget i otrzymała:
ERROR: cannot verify [domain]'s certificate, issued by `/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certificates.godaddy.com/repository/CN=Go Daddy Secure Certification Authority/serialNumber=********':
Unable to locally verify the issuer's authority.
I googled wokół i odkrył, że prawdopodobnie musiałem zainstalować godaddy root ca cert. Zorientowałem się, jak to zrobić (pobierz certyfikaty, umieść/usr/share/ca-certyfikaty i uruchom update-ca-certyfikaty). Nauczyłem się również używać openssl s_client w procesie.
teraz, że certyfikat jest zainstalowany, prace wget, ale LWP nadal nie z tego samego błędu i tak nie openssl s_client:
# openssl s_client -connect [domain]:443
CONNECTED(00000003)
depth=0 O = [domain], OU = Domain Control Validated, CN = [domain]
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 O = [domain], OU = Domain Control Validated, CN = [domain]
verify error:num=27:certificate not trusted
verify return:1
depth=0 O = [domain], OU = Domain Control Validated, CN = [domain]
verify error:num=21:unable to verify the first certificate
verify return:1
nie mam pojęcia, gdzie iść dalej, aby dostać tę pracę. Jakieś sugestie?
EDIT:SOLVED Oto prosty skrypt, który opisuje, co pracowali po mikew za sugestia:
#!/usr/bin/perl
use LWP::UserAgent;
$URL="[domain]";
my $ua = LWP::UserAgent->new(ssl_opts => { SSL_ca_path=>'/etc/ssl/certs'});
my $response = $ua->get($URL);
to działało kiedy dodałam tylko SSL_ca_path. Dzięki! –
Dobrze słyszeć! Edytowano odpowiedź, aby wyjaśnić, że potrzebny jest tylko jeden z plików SSL_ca_file lub SSL_ca_path. – mikew