Apache での TLS1.0 と TLS1.1 の無効化と確認方法メモ

クラウド
クラウド
スポンサーリンク

Yahoo! Japan が、2018年6月1日から TLS1.0 と TLS1.1 のサポートを順次終了して TLS1.2 のみのサポートに切り替えています。ここ数年、各社ウェブサービスでも TLS1.0 と TLS1.1 を無効化する動きもあり、今後 SSL/TLS のプロトコルは TLS1.2 以上に設定することが標準になるでしょう。そこで今回は、Apache httpd サーバーで TLS1.0 と TLS1.1 を無効にし、設定を確認する方法をメモしておきました。

 
参考資料:Yahoo!セキュリティセンター

TLS1.0 と TLS1.1 を無効化する理由

無効化する理由は、TLS1.0 と TLS1.1(実装にもよる)に POODLE(プードル)という暗号化通信を解読されてしまう脆弱性があるためです。

POODLE が発見された当初は、SSL3.0 のみがこの脆弱性の対象と思われていましたが、(これにより SSL3.0 は 2015年6月に利用が禁止されました)TLS1.0 と TLS1.1 にも影響することが発見され、RFC7525(TLSの安全な使用に関する推奨事項及びDTLS)では TLS1.0 と TLS1.1の使用を非推奨とする内容になっています。

また、クレジットカードの情報セキュリティ基準 PCI DSS でも「2018年6月30日までに 初期のTLS(1.0 と 1.1)を廃止してね!」の旨が定められています。おそらくこれが TLS1.0 と TLS1.1 の無効化を後押ししている大きな要因でしょう。

TLS1.2 に対応している OSやブラウザー

SSLはすべてのバージョンが利用を禁止されていますので TLS1.0 と TLS1.1を無効化した場合、現時点(2018年6月6日)では TLS1.2 のみを利用することになります。

標準設定で TLS1.2 に対応している OSやブラウザーは次の通りです。少し古いパソコンやスマートフォンを使っている方には影響がありそうですね。

TLS1.2 に対応している OS

  • Windows 7 以上
  • MacOS X 10.9 以上
  • iOS 5.0 以上
  • Android 5.0 以上

TLS1.2 に対応している ブラウザ

  • Google Chrome 30 以上
  • Firefox 27 以上
  • Safari 7 以上
  • Internet Explorer 11 以上
  • Edge すべてのバージョン

 

TLS1.0 と TLS1.1 の無効化設定

TLS1.2 を使うには OpenSSL が バージョン 1.0.1 以上であることが必要なので、念のため確認しておきます。

$ openssl version
OpenSSL 1.0.2k-fips 26 Jan 2017

Apache httpd サーバーで TLS1.0 と TLS1.1 を無効にし、TLS1.2 のみ利用する設定は次の通りです。
vi /etc/httpd/conf.d/ssl.conf

SSLProtocol -all +TLSv1.2

参考資料:SSLProtocol | mod_ssl - Apache HTTP Server Version 2.4

設定が終わったら Apache httpd を再起動します。

$ sudo systemctl restart httpd

無効化されていることの確認

最後に SSL Server Test(SSL Labs)で、TLS1.0 と TLS1.1 が無効になっていることを確認します。

SSL Server Test 有効なSSLプロトコル

おわりに

TLS の新しいバージョン TLS1.3 が、2018年3月23日 IETFにより承認されました、TLS1.2 のリリースが2008年ですので実に10年ぶりのアップデートになります。TLS1.3 ではより安全なインターネット通信ができるようになっています。早く普及してくれるといいですね。

 
 
 
 

コメント

タイトルとURLをコピーしました