CentOS 5.xで動作しているサイトをSSLリバースプロキシで保護する必要があり、CentOS 8のホストを設置したところ、dh key too smallというエラーが出て動作しませんでした。 これを回避する設定を模索したところ、以下の設定で通信できたのでメモしておきます。
仮に、以下のホストがCentOS 5.x系統だったとして、 ----- virtual host : example.com ipaddr : 1.2.3.4 -----
CentOS 8側の設定を以下のようにしました。 ----- <ifModule mod_proxy.c> ProxyRequests Off <Proxy *> Require all granted </Proxy>
<VirtualHost *:80> ServerName example.com:80 ProxyPass / http://1.2.3.4/ ProxyPassReverse / http://1.2.3.4/ </VirtualHost>
<VirtualHost *:443> ServerName example.com:443
SSLEngine on SSLProxyEngine on
# ユーザ側にはTLS 1.2以上で応答します SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 # CentOS 5.x側にはTLS 1.0(SSL 3)でリクエスト転送します SSLProxyProtocol TLSv1 SSLProxyVerify none
# ユーザへの応答はできる限り強めの暗号化で #SSLCipherSuite PROFILE=SYSTEM SSLCipherSuite HIGH:MEDIUM:!aNULL:!SSLv2:!SSLv3:!TLSv1:!RC4:!DH # CentOS 5.x側には通信できるギリギリまで下げます #SSLProxyCipherSuite PROFILE=SYSTEM SSLProxyCipherSuite ALL:!EXP:!NULL:!DH:!LOW
SSLCompression off SSLHonorCipherOrder on SSLOptions +StrictRequire
SSLCertificateFile /etc/pki/tls/certs/example.com.crt SSLCertificateKeyFile /etc/pki/tls/private/example.com.key SSLCACertificateFile /etc/pki/tls/certs/ca-chain.crt
# SSL->SSLで同一ホスト名をキープする場合、ONにする # あるいは別ホスト名をつけられるならipaddrでのアクセスをホスト名にする ProxyPreserveHost On ProxyPass / https://1.2.3.4/ ProxyPassReverse / https://1.1.3.4/ </VirtualHost> </ifModule> -----
お役に立てば。
|