SSLv3 で最近発見された POODLE 脆弱性に対処するため、Subversion リポジトリ サーバーを含むサーバー上の古いプロトコルを無効にしました。
これにより、RHEL5 マシン上の svn クライアントが壊れ、次のエラーが報告されるようになりました。
svn: OPTIONS of 'https://svn.example.net/foo/trunk/': SSL negotiation failed: Secure connection truncated (https://svn.example.net)
。
svn のバージョンは 1.6.11 です。RHEL6 でも同じバージョンで問題ないので、違いは openssl-libraries にあると考えられます。
しかし、svn クライアントと同じ RHEL5 ボックス上で実行されている Apache は同じライブラリを使用し、問題なく独自の SSL トラフィック (TLSv1 経由) を提供しています。
SSLv3 をサポートする svn-server なしで svn-client を動作させるにはどうすればよいですか?
アップデートldd
:の出力を詳しく見ると、svn
は RHEL6 では GNUTLS にリンクしていますが、RHEL5 では OpenSSL にリンクしていることがわかります。これが違いの原因かもしれません。しかし、同じ RHEL5 システムで OpenSSL を使用する Apache が TLSv1 を問題なく提供できる理由がまだわかりません。
答え1
この回避策を試してくださいhttps://access.redhat.com/solutions/1234843。
svn-client <-- SSLv3 をサポート --> ローカル stunnel <-- SSLv3 なし / TLS に自動的にフォールバック --> SVN サーバー
一部のコンポーネントでは、SSLv3 を無効にできる構成パラメータが提供されていません。現在、次のコンポーネントがこのカテゴリに該当することが分かっています。
オープンLDAP
カップ
stunnel を使用すると、これらのコンポーネントの SSLv3 を無効にすることができます。stunnel は、暗号化に OpenSSL ライブラリを使用して、リモート クライアントとローカル (inetd で起動可能) またはリモート サーバー間の暗号化ラッパーを提供します。n stunnel で SSLv3 を無効にするには、stunnel.conf ファイルで次の構成パラメータを使用します。
options = NO_SSLv2
options = NO_SSLv3
答え2
1 つの解決策は、新しいバージョンの serf (1.3.8) を使用するように Subversion を再コンパイルすることです。最新の serf は SSLv3 も使用しないため、TLS のみのサーバーと通信できます。ただし、svn
多数のシステムで -client を更新すること自体に問題があります。
この問題は、サーバー上のApacheを次のように修正することで解決しました。ServerFault での私自身の質問に対する私の回答幸運を祈ります。