Nginx 恢復到 sslv3
我正在使用 nginx 作為反向代理,並且正在嘗試關閉 sslv3 支持。
我在這里和其他各種網站上都找到了各種答案。他們都建議我需要做的就是在我的 nginx.conf 中的預設 http 塊中添加如下內容
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS:!RC4"; ssl_prefer_server_ciphers on;
我已經做到了,甚至從https://cipherli.st/嘗試了這個完整的配置
ssl_ciphers "AES128+EECDH:AES128+EDH"; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"; add_header X-Frame-Options DENY; add_header X-Content-Type-Options nosniff; ssl_session_tickets off; # Requires nginx >= 1.5.9 ssl_stapling on; # Requires nginx >= 1.3.7 ssl_stapling_verify on; # Requires nginx => 1.3.7 resolver $DNS-IP-1 $DNS-IP-2 valid=300s; resolver_timeout 5s;
我仍然只在 SSL Labs 上獲得“C”評級(無論我做出任何改變),原因如下
該伺服器容易受到 POODLE 攻擊。如果可能,請禁用 SSL 3 以減輕影響。等級上限為 C。
此伺服器接受弱的 RC4 密碼。等級上限為 B。
我還重新啟動了伺服器,所以我知道配置更改已被應用。
nginx -v
nginx版本:nginx/1.9.0
/etc/issue
Ubuntu 14.04.2 LTS \n \l
openssl 版本 -a
OpenSSL 1.0.1f 2014 年 1 月 6 日建構於:2015 年 3 月 19 日星期四 15:12:02 UTC 平台:debian-amd64 選項:bn(64,64) rc4(16x,int) des(idx,cisc,16 ,int) blowfish(idx) 編譯器:cc -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -DTERMIO -g -O2 -fstack-protector –param=ssp-buffer-size=4 -Wformat - Werror=format-security -D_FORTIFY_SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,–noexecstack -Wall -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1-DSHA512-SHA DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM OPENSSLDIR:“/usr/lib/ssl”
有什麼建議麼?
我相信你的 openssl 版本是問題所在。openssl 小組建議最低版本為 1.01j。
另外,請檢查您的密碼。!RC4之前不應該有一個冒號嗎?