Apacheのリバースプロキシで発生したエラー「SSL Library Error: error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small」

スポンサードリンク

Apacheで構築したリバースプロキシサーバーで下記エラーが出ました。

Proxy Error Reason: Error reading from remote server

リモートのWebサーバからのステータスラインの読み込みに失敗したとのことですが、思い当たる点がなく、Apacheのログレベルをdebugにして調査しました。

エラーログには以下が記録されていました。Apacheのログとしてはinfoレベルですが内容はエラーそのもので、dh key too small と記載があります。

[ssl:info] [pid 427857] SSL Library Error: error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small

接続先のサーバーの鍵サイズが、こちらのサーバーが求めている鍵サイズより小さいためエラーとなっていたようです。

対策として、下記設定をApacheの設定に追加して対応しました。 リモートサーバーと接続する際に使用する暗号化プロトコルの制限を極力無くす記述です。

SSLProxyCipherSuite ALL:!EXP:!NULL:!DH:!LOW

一般的に推奨される設定では無い点は注意が必要です。今回は問題が起きているサイトに限定する形で設定して影響が最小限になるよう対応しました。



Linuxコマンドについて学べるおすすめ書籍
Linuxコマンドの知識は、プログラマにとって長く役立つ知識です。 私はこちらの書籍で一通り知識を抑えました。基本から丁寧に解説されています。

Linux教科書 図解でパッとわかる LPIC/LinuC
はじめてLPICを受ける方向け、手を動かしながらLinuxについて学びたい方におすすめ。30日間の無料体験もできる『Kindle Unlimited』でも読むことができます。