报错信息
ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY
解决方法
Nginx
默认设置是ssl_ciphers HIGH:!aNULL:!MD5;
这样设置包含有最安全可靠版本的SSL/TLS
的加密套件。但是对于低版本的浏览器或者浏览器本身使用的加密方式是其他的加密方式就会报出:ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY
的错误;
配置ssl_ciphers
, Mozilla基金会推荐
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:ECDHE-RSA-AES128-GCM-SHA256:AES256+EECDH:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
如果你的OpenSSL
是旧的,不可用的密码将被自动丢弃。始终使用上面的完整的ciphersuite
,并让OpenSSL
选择它支持的那些。
ciphersuite
的排序非常重要,因为它决定优先选择哪种算法。上面的建议优先考虑提供完美的正向保密的算法。
参考文献
https://cipherli.st/
https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html
https://github.com/cloudflare/sslconfig/blob/master/conf