ApacheのSSL設定を見直してセキュリティレベルを向上させる

OS: Ubuntu Server 18.04.1 LTS
Apache 2.4.35
OpenSSL 1.1.0g 2 Nov 2017

ApacheでSSLサーバ証明書の設定をこなしたけれども殆どデフォルトの儘に任せていたからQualysのSSL Server Testを実施するとこういう有様である。

図1. Qualys SSL Server Testの総合評価
図2. Qualys SSL Server Testの詳細の一部

前方秘匿性のサポートが無い為にB判定という次第である。RSAによる鍵交換は前方秘匿性が無いからそれが理由でBということであった。ECDHE(楕円曲線ディフィー・ヘルマン鍵共有)を活用なさいという旨、記載があったけれども内容が高度に過ぎて飲み込める範疇を遥かに超えてゐる。

こうなるとApacheの設定を如何様に手をつければよいか、ぜんぜん想像が及ばない。も少し手軽に何とかできないか調べるとMozilla SSL Configuration Generatorという大変心強いサイトをmozillaが用意して呉れていた。

Webサーバの種類とバージョン、OpenSSLのバージョンを選択するだけで設定をパッと示してくれる。まことに有り難い仕組みである。またModern、Intermediate、Oldの選択肢で、古いブラウザのサポートをどの程度確保するかおおまかに決定できる。

Oldは随分昔のブラウザまで対応する代わりに脆弱性が確認されているSSLv3を使うし、Modernは今の所安心できそうなSSLプロトコルと暗号スイートを備える代わりに古いブラウザを切り捨ててゆく方針となるようである。

$ openssl version
OpenSSL 1.1.0g  2 Nov 2017

$ /usr/local/apache2/bin/httpd -v
Server version: Apache/2.4.35 (Unix)
Server built:   Oct  3 2018 13:34:46

試みにApacheとOpensslのバージョンを探り、これをもとに設定を表示させた。設定をうまい具合にhttp-ssl.confへ書き込んだらapachectl configtestで文法チェックをし、問題なければApacheを再起動する。そのあと、SSL Server TestのサイトへアクセスしてClear cacheをクリックしてから、再度検査を執り行うと大変よさそうな評価であった。

図4. Clear cacheで前回検査したキャッシュを削除
図5. 総合評価A+を獲得した様子

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください