Perl スクリプトを使用して、サードパーティ ソフトウェアを実行しているローカル マシンから情報を取得しようとしています。Web ブラウザーで表示できますが、自動化する必要があります。問題は、ソフトウェアのインストール時に作成された SSL 証明書が気に入らないように見えることです。
問題はないと私は言います。LWP:UserAgent に証明書を無視するように指示するだけです。うーん...同じエラー。
これが私が使用しているテストスクリプトです...
#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
my $ua = LWP::UserAgent->new( 'ssl_opts' => { 'verify_hostname' => 0 } );
my $response = $ua->get( 'https://192.168.1.50' );
print "\n\n";
if ( defined( $response ) ) {
print $response->as_string;
}
else {
print "No response object created.";
}
print "\n";
...そして、これが私が得る応答です...
500 Can't connect to 192.168.1.50:443 (certificate verify failed)
Content-Type: text/plain
Client-Date: Tue, 05 Nov 2013 16:42:53 GMT
Client-Warning: Internal response
Can't connect to 192.168.1.50:443 (certificate verify failed)
LWP::Protocol::https::Socket: SSL connect attempt failed with unknown error error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed at /usr/local/share/perl5/LWP/Protocol/http.pm line 51.
ドキュメントで読んだことと、さまざまなフォーラムで見たアドバイスから、「verify_hostname」を false の値に設定すると、無効な証明書が無視されるようになるはずです。
私が欠けているものについて何か提案はありますか?