私は古いDebianサーバーを稼働しています。一日一回、Perlスクリプトを使ってWebページを取得します。昨日から、スクリプトは "500 SSL negotiation failed"というエラーで失敗します。LWP :: UserAgentと500 SSLネゴシエーションに失敗しました
- たPerl:5.8.8
- のOpenSSL:0.9.8c
- LWP:5.805
- 墓所私が言ったように
use strict; use LWP::UserAgent; my $browserObj = LWP::UserAgent->new(); $response = $browserObj->get("https://www.domain.tld"); print $response->status_line . "\n" if(! $response->is_success);
は、それがすべての古いバージョンを実行している古いサーバーです:: SSLeay:0.57
サーバーのスナップショットを作成しました。すべての種類のソリューションを作成し、失敗した場合はスナップショットに戻ります。これは、各テスト後に行ったこととまったく同じですが、元のサーバー状態に戻ります。
テスト1: 私が試した最初のことは、OpenSSLを1.0.2dにアップデートすることでした。それは助けにはならなかった、私はまだ "SSL交渉に失敗しました"エラーがあります。私はCrypt:SSLeayを更新しました。それはSSLを完全に破った(サーバーを安全なサーバーに接続できなくなった)。
テスト2: OpenSSLを更新せずにCrypt :: SSLeayを更新しました。サーバーを保護されたサーバーに再度接続できなくなりました。
テスト3: OpenSSLを1.0.2dにアップデートしました。更新されたLWP。違いはありません。それでも「500 SSLネゴシエーションに失敗しました」
他に何か試してみることはできますか?
PS:いくつかの理由から私はDebian自体を更新できません。
あなたのリモートサーバーは古いバージョンのSSLをサポートしていません。危険なほど古いSSLバージョンがたくさんあるので、サイトはそれらを非難し始めています。例えば。次のようなものです:http://security.stackexchange.com/questions/71457/how-can-i-verify-that-sslv3-protocol-is-disabled – Sobrique
はい、私の推測でした。 – Zippy1970
どのように私はあなたがそれをテストするのか本当にわからない - おそらくwgetで確認する? – Sobrique