1

プラットホーム

  • OS:RHEL 5.4
  • Perl:5.8.8
  • OpenSSL:0.9.8e
  • Net :: LDAP:0.33

詳細

アプリケーションで使用されているLDAPサーバーを監視し、これらのサーバーに到達できないか、何らかの方法で機能していない場合にアラートを送信するperlスクリプトがあります。SSLv2のみを受け入れる特定のLDAPサーバーを除いて、全体としてこれはうまく機能します。LDAPオブジェクトの作成は次のようになります

my $current_server = Net::LDAP->new('ldaps://10.1.1.1:636/,
                     verify => 'none',
                     sslversion => 'sslv23',
                     timeout => 30 )

ドキュメントによると、SSLv2または3の使用を許可するsslv23に注意してください。ドキュメントの関連エントリは

sslversion =>'sslv2' | 'sslv3' | 'sslv23' | 'tlsv1'

ただし、上記は機能しません。「sslversion」を「sslv2」に変更すると、スクリプト機能します。

結論

sslv3が機能しない場合、Net :: LDAPSをsslv2で再試行するにはどうすればよいですか?

ありがとう、

フレッド。

4

2 に答える 2

0

私自身の質問に答えるために-SSLv3が失敗した場合にライブラリをSSLv2にフォールバックさせる方法が見つからなかったので、最初にSSLv3を試し、失敗した場合はSSLv2を試して、自分のコードでそれを行いました。これは私の特定の状況で機能します。

より多くの情報を持っている人は誰でもコメントすることをお勧めします。

于 2012-10-19T15:02:08.687 に答える
0
  • どのバージョンIO::Socket::SSLを使用していますか?
  • どのバージョンNet::SSLeayを使用していますか?

ソースコードをIO::Socket::SSL見ると、それは。と同等のをsslv23使用することを意味していることがわかります。ライブラリの実装から削除された可能性があります。Net::SSLeay::CTX_new()Net::SSLeay::CTX_v23_new()SSLv2CTX_v23_new

于 2015-04-01T00:12:53.480 に答える