我正在嘗試按照位於的說明進行操作這裡為了緩解 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"
我一直在尋找,但找不到任何方法來解決這個問題。
答案1
來自阿帕奇文檔,SSLOpenSSLConfCmd
在2.4.8版本中新增了該選項:
相容性:如果使用 OpenSSL 1.0.2 或更高版本,則可在 httpd 2.4.8 及更高版本中使用
如果需要使用此選項,您將需要更新至更高版本的 Apache。
答案2
還有 apache 2.2.22 (debian 7) 根據 qualys ssl 實驗室測試,我還一一刪除了有問題的密碼https://www.ssllabs.com/ssltest/index.html現在已經過去了,只有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 密碼
答案3
「SSLOpenSSLConfCmd」設定參數不適用於 Apache 2.2,而且它不會為此提供任何類似的設定參數。儘管在官方補丁發布之前,Apache 2.2 有一個解決方法:https://bitbucket.org/snippets/wneessen/grb8
答案4
我避免了 apachet 2.4 伺服器中的堵塞,但使用 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
重新加載阿帕奇
apachectl -k graceful
並用這個工具檢查一下地點 或使用 nmap
nmap --script ssl-enum-ciphers -p 443 yourserver |grep weak