古いWebサーバでのSSL対応について
システム管理のつぼ(2019年1月号)
ソリューション開発部 徳武 竜太
各Webブラウザで、古い暗号化方式である、TLS1.0や1.1を無効化する動きが進んでいます。例えば、Microsoft EdgeやInternet Explorer 11は2020年の前半に、Firefoxは2020年3月に無効化される予定です。また、Google Chromeは1月29日にリリースされる、Chrome 72から非推奨になり、2020年にリリース予定のChrome 81で無効になります。上記のクライアント側であるWebブラウザの流れに、サーバ側も対応しなければなりません。運用しているWebサーバが、TLS1.2の接続を受け付けられるかの点検がまず必要となり、もし受け付けられなかった場合は、接続を受け付け可能にさせる対応も必要になります。
点検のポイントとしては、サーバで使用しているOpenSSLのバージョンの確認です。TLS1.2はOpenSSL-1.0.1から対応されるようになったので、運用しているサーバのOpenSSLのバージョンを確認しましょう。また、実際にTLS1.2を使用できるか確認するためのツールもあります。ツールにもいくつか種類がありますが、Webページから確認するのが最も手軽な方法です。上記の方法で確認した際に、OpenSSLのバージョンが1.0.1未満であったら、OpenSSLのアップデートが必要になります。
また、OpenSSLのバージョンが1.0.1以上で、TLS1.2に対応していなかった場合は、ApacheやnginxのようなWebサーバの設定の修正が必要になります。古いOSのサーバでも上記のような対応が可能ですが、アップデートや運用自体が煩雑になるだけでなく、そもそものバージョンアップや運用も難しくなります。
例えば、Red Hat Enterprise LinuxやCentOSは5系以下、Debianは8系以下(*1)、Ubuntuは12系(*2)以下のバージョンはサポートが終了していて、TLS1.2対応させるのが難しい状態となっています。また、Webサーバのみでなく、その他のセキュリティ面でも脆弱です。古いサーバを放置していると、上記のような問題が生じます。
さらに、TLS1.2よりも新しいTLS1.3もリリースされ、先述したような各ブラウザもTLS1.3の対応を進めています。新しい暗号化方式がリリースされると古いものはTLS1.0やTLS1.1のように対応が廃止されます。サーバ自体が古いままだとこういった最新の流れに対応できなくなるため、定期的にセキュリティ情報やソフトウェアのサポート期限は常に確認しましょう。
(*1) LTSは2020年6月30日まで
(*2) ESMは2019年4月まで