Nginx sslv3 贵宾犬禁用

Rin*_*iev 4 ssl nginx openssl ssl-certificate poodle

我尝试在我的 nginx 中设置没有 SSLv3 的 SSL 证书,但 SSL 实验室说,我的服务器有 SSLv3 如何禁用它。

我的配置:

    add_header Strict-Transport-Security max-age=31536000;
    add_header X-Frame-Options DENY;

    ssl_session_cache shared:SSL:10m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers "EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA256:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EDH+aRSA+AESGCM:EDH+aRSA+SHA256:EDH+aRSA:EECDH:!aNULL:!eNULL:!MEDIUM:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4:!SEED";
    ssl_prefer_server_ciphers on;
    add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains';
Run Code Online (Sandbox Code Playgroud)

Ren*_*hle 6

这是一个很好的教程,如何使用最佳设置配置 nginx。

https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html

您对 SSLv3 的配置是正确的。

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
Run Code Online (Sandbox Code Playgroud)

在帖子中是您的密码部分。

ssl_ciphers 'AES256+EECDH:AES256+EDH';
Run Code Online (Sandbox Code Playgroud)


小智 6

根据https://www.tinfoilsecurity.co ... 或 ssllabs.com 的测试,我已经正确设置了我的 ssl_protocols 并且无法让它禁用 SSLv3 。最终我发现

https://disablessl3.com/#test其中提到尝试:

openssl s_client -connect <hostname:443> -ssl3
Run Code Online (Sandbox Code Playgroud)

作为测试它的命令。当我这样做时,我发现 nginx 正在使用另一个虚拟主机的 SSL 证书进行初始握手,而不是在此特定虚拟主机中设置的证书。一旦我在所有使用 SSL 的虚拟主机中添加了 ssl_protocols 行,它就会突然开始工作。