web-dev-qa-db-ja.com

Apache 2.2.16でLogjamを軽減しようとしています

Logjamの脆弱性を軽減するために、 ここ にある指示に従っていますが、appacheから次のエラーが発生し続けます。

Syntax error on line 18 of /etc/Apache2/sites-enabled/000-default:
Invalid command 'SSLOpenSSLConfCmd', perhaps misspelled or defined by a module not included in the server configuration
Action 'configtest' failed.

次の行を構成に追加すると、

SSLOpenSSLConfCmd DHParameters /etc/ssl/certs/dhparams.pem

私のアパッチの詳細は次のとおりです。

Server version: Apache/2.2.16 (Debian)
Server built:   Oct 16 2014 10:27:58
Server's Module Magic Number: 20051115:24
Server loaded:  APR 1.4.2, APR-Util 1.3.9
Compiled using: APR 1.4.2, APR-Util 1.3.9
Architecture:   32-bit
Server MPM:     Prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D Apache_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=128
 -D HTTPD_ROOT="/etc/Apache2"
 -D SUEXEC_BIN="/usr/lib/Apache2/suexec"
 -D DEFAULT_PIDLOG="/var/run/Apache2.pid"
 -D DEFAULT_SCOREBOARD="logs/Apache_runtime_status"
 -D DEFAULT_LOCKFILE="/var/run/Apache2/accept.lock"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="mime.types"
 -D SERVER_CONFIG_FILE="Apache2.conf"

探していましたが、この問題を解決する方法が見つかりません。

7
Joel Lewis

Apacheドキュメント から、SSLOpenSSLConfCmdオプションがバージョン2.4.8で追加されました。

互換性:OpenSSL 1.0.2以降を使用している場合、httpd 2.4.8以降で使用可能

このオプションを使用する必要がある場合は、新しいバージョンのApacheに更新する必要があります。

4
Craig Watson

また、Apache 2.2.22(debian 7)です。qualysssl labsテスト https://www.ssllabs.com/ssltest/index.html によれば、問題のある暗号を1つずつ削除しました現在、WinXP/IE6のみが非互換です

暗号私は最終的に使用しました:

SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-DSS-AES128-SHA256:DHE-DSS-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA:!DHE-RSA-AES128-GCM-SHA256:!DHE-RSA-AES256-GCM-SHA384:!DHE-RSA-AES128-SHA256:!DHE-RSA-AES256-SHA:!DHE-RSA-AES128-SHA:!DHE-RSA-AES256-SHA256:!DHE-RSA-CAMELLIA128-SHA:!DHE-RSA-CAMELLIA256-SHA

これは https://weakdh.org/sysadmin.html の推奨に基づいていますが、テストで問題があるとマークされたdh-cipherを削除しています

8
greenone83

「SSLOpenSSLConfCmd」構成パラメーターはApache 2.2では機能せず、同様の構成パラメーターを提供しません。公式パッチがあるまで、Apache 2.2の回避策はありますが https://bitbucket.org/snippets/wneessen/grb8

4
Winni

私はApache 2.2.22(Debian)を使用していて、DHを省略しているため、ほとんどの最新のブラウザーで機能する次のCipherSuiteを使用しています。

SSLCipherSuite ECDH+AESGCM:ECDH+AES256:ECDH+AES128:ECDH+3DES:RSA+AES:RSA+3DES:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!ADH:!AECDH:!MD5:!DSS:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
1
digitalhippie

Apache httpd 2.4.7以前の場合:

エフェメラル/匿名DH([EC] DHE、完全転送秘密を提供するもの)は、サーバー証明書の係数(つまり2048/3072/4096/6144/8192)に基づいたサイズの標準化されたDH素数(パラメーター)から自動的に計算されます。証明書が-推奨されない-1024ビットの場合は1024ビットです)。

ソース

基本的に、Apache <2.4.7は証明書モジュラスの長さと同じ長さのDHパラメータを使用しますが、Apache&mod_ssl 2.2.15を使用すると テスト が2048証明書であり、DHEに「一般的な1024ビットプライム」を使用していることを示します。

一方、Apache 2.2のドキュメントでは、 mod_ssl <2.2.30はキー長> 1024を使用できない

バージョン2.2.30以降、mod_sslは1024ビットを超える長さの素数を含むDHパラメータを使用します

使用中のCipherSuiteは Mozilla config generator で示されています。

ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
0
Gaia

私はapachet 2.4サーバーでlogjamを避けますが、openssl 1.0.1ではこれを使用します

SSLProtocol -all +TLSv1 +TLSv1 +TLSv1.1 +TLSv1.2
SSLCipherSuite ECDH+AESGCM:ECDH+AES256:ECDH+AES128:ECDH+3DES:RSA+AES:RSA+3DES:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!ADH:!AECDH:!MD5:!DSS:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA

次に、dhparamsを作成します

openssl dhparam -out dhparams.pem 2048
chmod 600 dhparams.pem

と証明書に追加

cat /etc/ssl/certs/dhparams.pem >> /etc/ssl/certs/serverhttp.crt 

apacheをリロード

apachectl -k graceful

そして、この site のツールまたはnmapで確認してください

nmap --script ssl-enum-ciphers -p 443 yourserver |grep weak
0
elbarna