他のマシンは正常に動作しているのに、Ubuntu マシンに接続する際に問題が発生しています。両者の違いは、Ubuntu 版と SSLeay 版ですが、何が問題なのかを絞り込むことはできません。
私はすでに次のことを行いました: a) 環境変数を追加します: PERL_LWP_SSL_VERIFY_HOSTNAME の値を 0 にします b) $ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0; を追加します。VICommon.pm ファイルに
上記の両方が機能しませんでした。2 台目のマシンで動作しない理由がわかりません。
Ubuntu 12.10 (動作)
$perl /usr/lib/vmware-vcli/apps/general/connect.pl --url https:///sdk/webService --username --password
接続成功
サーバー時間: 2013-07-19T22:11:31.681181Z
$ パール -v
これは、x86_64-linux-gnu-thread-multi 用にビルドされた perl 5、バージョン 14、サブバージョン 2 (v5.14.2) です。
$ perl -MLWP -e 'print "LWP バージョン: $LWP::VERSION\n"'
LWP バージョン: 6.04
$ perl -MCrypt::SSLeay -e 'print "Crypt::SSLeay バージョン: $Crypt::SSLeay::VERSION\n"'
クリプト::SSLeay バージョン: 0.58
Ubuntu 13.04 (動作しません)
$perl /usr/lib/vmware-vcli/apps/general/connect.pl --url https:///sdk/webService --username --password
/usr/share/perl/5.14/VMware/VICommon.pm 行 548 の「https:///sdk/vimService.wsdl」でサーバー バージョンを利用できません。
$ パール -v
これは、x86_64-linux-gnu-thread-multi 用にビルドされた perl 5、バージョン 14、サブバージョン 2 (v5.14.2) です。
$ perl -MLWP -e 'print "LWP バージョン: $LWP::VERSION\n"'
LWP バージョン: 6.04
$ perl -MCrypt::SSLeay -e 'print "Crypt::SSLeay バージョン: $Crypt::SSLeay::VERSION\n"'
Crypt::SSLeay バージョン: 0.64
証明書エラー (両方のマシンで同じ)
lwp-request https:///sdk/webService に接続できません:443 (証明書の検証に失敗しました)
LWP::Protocol::https::Socket: SSL 接続試行が不明なエラー error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed at /usr/share/perl5/LWP/Protocol/http.pm 行 51 で失敗しました。
更新 1
この問題はUbuntuのバージョンとは何の関係もないように見えますが、「apt-get upgrade」を実行したときに取得した新しいパッケージは、12.10ボックスでは実行しませんでしたが、機能していました。ただし、13.04 では、すべての更新を行うことになりました。私が行ったときに80を超える更新を取得したので、それを台無しにしているライブラリにまだ絞り込んでいません。新しい 13.04 イメージをインストールすると、正常に動作します。
** アップデート 2 **
ベースの Ubuntu 12.10 または 13.04 は正常に動作するようです。最新のアップデートを取得すると、機能しなくなります。したがって、どのライブラリが問題を引き起こしているのかはまだわかりません。