OpenSSLおよびApacheでTLS 1.1および1.2を有効にする方法


33

新たに発表されたSSL / TLSに対するブラウザーエクスプロイト(BEAST)などのセキュリティ問題の増加に照らして、OpenSSLおよびApacheでTLS 1.1および1.2を有効にして脆弱性を回避する方法を知りたいと思いました。そのような脅威ベクトルに。

回答:


25

TLS1.2をApacheで使用できるようになりました。TLSs1.2を追加するには、https仮想ホスト構成に追加するだけです。

SSLProtocol -all +TLSv1.2

-all 他のsslプロトコル(SSL 1,2,3 TLS1)を削除しています

+TLSv1.2 TLS 1.2を追加しています

ブラウザの互換性を高めるために使用できます

SSLProtocol -all +TLSv1 +TLSv1.1 +TLSv1.2

ちなみに、次を使用してCipherスイートも増やすことができます。

SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GC$

https://www.ssllabs.com/ssltest/index.htmlのようなオンラインスキャナーを使用して、https Webサイトのセキュリティをテストできます


2
この投稿が「古い」とマークされている理由がわかりません。推奨されるソリューションを使用し、顧客のサイトはQualsys SSL Labsの「C」評価から「A」評価になりました。
マイケルソブザック

こんにちは、誤解を防ぐために古い警告を削除しました。それは古い正解へのリンクでした。セキュリティが向上したことを嬉しく思います;)
フロッグギズ

sites-available / 000-default.confで仮想ホスト「SSLProtocol -all + TLSv1.2」に追加し、AH00526:/etc/apache2/sites-enabled/000-default.confの31行目の構文エラー:無効なコマンド「SSLProtocol」。スペルが間違っているか、サーバー構成に含まれていないモジュールによって定義されている可能性があります。アクション「configtest」が失敗しました。
エリアワイス

mod_sslを有効にしましたか?(コマンド:a2enmod ssl)
Froggiz

「SSLProtocol:違法なプロトコル「TLSv1.2」」(OS X 10.10.5)
マイケルマイケル


10

OpenSSL changelogによると、TLS 1.2のサポートはOpenSSL 1.0.1の開発ブランチに追加されましたが、このバージョンはまだリリースされていません。おそらく、ApacheでTLS 1.2を実際に有効にするためにmod_sslコードにいくつかの変更も必要になるでしょう。

別の一般的に使用されるSSL / TLSライブラリはNSSです。あまり知られていないApacheモジュールmod_nssによって使用されます。残念ながら、現在のNSSリリースもTLS 1.2をサポートしていません。

さらに別のSSL / TLSライブラリはGnuTLSであり、現在のリリースで既にTLS 1.2をサポートするふりをしています。GnuTLSを使用するApacheモジュール:mod_gnutlsがあり、これもTLS 1.2をサポートすると主張しています。ただし、このモジュールはかなり新しいようで、あまり安定していない可能性があります。私はそれを使用しようとしませんでした。


1
@セルゲイ、リンクと情報をありがとう。私たちは、年齢を考慮してこれらの基準を活用することができないことを今でも悲しんでいます。システムとネットワークを守る必要があるのに、セキュリティ体制を改善するツールを利用できないのは奇妙に思えます。また、Webブラウザの人々は、ApacheやIISなどのサーバーの人々に加えて、これらの標準のサポートを有効にする方法を持っているようです。
ジョン

2
この答えは1年後もまだ正確ですか?
ベン・ウォルター

2
@BenWalther OpenSSL 1.0.1は、TLS 1.2をサポートして2012年3月にリリースされました。現在の最新バージョンは1.0.1cです。残りの投稿のどれだけがまだ有効かはわかりません。
バーハンアリ

6

OpenSSLはまだTLS 1.1のリリースを提供していません。

/に関連するコメント。この問題の場合:

主要なライブラリOpenSSLが安定版リリースのプロトコルのいずれもまだサポートしていない世界でTLS 1.1および1.2サポートを実装する方法を、洗っていない大衆に親切に説明しますか?もちろん、GnuTLSとmod_gnutlsを使用できます。試してみましたが、Opera以外のブラウザがサポートしておらず、モジュールに奇妙な不具合があったため、意味がありませんでした。IE 8/9はVistaおよび7でそれらをサポートするはずでしたが、クライアント側で1.1および1.2が有効になっているとmod_gnutlsが提供するサイトへのアクセスに失敗しました。私は昨日、好奇心から新たに試してみましたが、今ではOpera 11.51でさえTLS 1.1および1.2でチョークしています。だからそこに。プロトコルを実際にサポートするものはありません。TLS 1.1用のOpenSSL 1.0.1を待つ必要があり、誰がいつリポジトリにヒットするかは誰にもわかりません。

http://it.slashdot.org/comments.pl?sid=2439924&cid=37477890


1
@ Steve-o、情報をありがとう。これは、TLS 1.1が2006年4月から公開され、TLS 1.2が2008年8月から2011年3月に更新されて公開されており、それらを利用する機能がまだないことは残念です。
ジョン


3

Gnu_tlsは魅力のように機能し、仮想ホスティングで非常に使いやすいSNI(サーバー名識別)も実装します。

Linuxディストリビューションでmod_gnutlsのbinパッケージを見つけるのにも問題はありません。2年前から使用しており、問題はありません。opensslimhoよりもパフォーマンスが高くなっています。

しかし問題は、ほとんどのブラウザーがtls 1.1または1.2をサポートしていないことでもあります。そのため、ブラウザーを定期的にアップグレードするという考え方を人々に広めてください。


@ Rastrano-これを実装する方法に関する提案やリンクはありますか?情報に感謝し、「現代の」ブラウザがまだそれをサポートしていないのは残念です。
ジョン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.