私はUbuntu 12.04(Apache 2.2.22-1ubuntu1.4およびopenssl 1.0.1-4ubuntu5.10)およびUbuntu 13.04(Apache 2.2.22-6ubuntu5.1およびopenssl 1.0.1c-4ubuntu8.1)でテストしました。
ここ 方法を説明しますが、次の問題があります。
使用しようとすると:
SSLProtocolすべて-SSLv2 -SSLv3 -TLSv1
次のエラーが発生しました:
[エラー]利用可能なSSLプロトコルがありません[ヒント:SSLProtocol]
使用しようとすると:
SSLProtocol TLSv1.1 TLSv1.2
次のエラーが発生しました:
[エラー]利用可能なSSLプロトコルがありません[ヒント:SSLProtocol]
面白いことは、私が使用するとき:
SSLProtocolすべて-SSLv2 -TLSv1
Apacheは文句を言わず、 このテスト は私のサーバーはSSLv2とTLSv1.0をサポートしていないが、SSLv3、TLSv1.1、TLSv1.2はサポートしていると報告しました。
その奇妙な行動に対する説明はありますか?多分テストツールが壊れていますか?
TLSv1.1とTLSv1.2だけを有効にするにはどうすればよいですか?
(これはソフトウェア構成の問題です。superuser.seへの再配置が発生するのを感じます...)
この構成が機能するには、2つの前提条件があります。
残念なことに SSLProtocol
のドキュメントには、require httpdバージョンが記載されていません(ただし、ページの下部にあるコメントセクションに記載されています)。
コードは少し複雑です。認識しているプロトコルのリストを繰り返し処理し、有効にしていないプロトコルを削除します。これは、表示される動作を説明しています。
Httpd-2.2.22までのコードは、「TLSv1.1」以降を解析しません(modules/ssl/ssl_engine_init.c
およびmodules/ssl/ssl_private.h
)。
設定SSLCipherSuiteである暗号のみ[〜#〜] just [〜#〜]でサポートされていますTLSv1.2@ mr.spuraticという解析TLSv1.1文字列のApache 2.2制限をバイパスしますについて話します。
UbuntuのopensslはTLSv1.2をサポートしていません。TLSv1.2は無効になっています。 バグ1256576 に記載されています