nginx
设定
SSL
跟其他网站上建议的有些差异:
- 直接关掉
TLSv1.1
,因为就浏览器安全性来说一定要用TLSv1.2
,就浏览器支援度来说则是开TLSv1.1
,目前没有看到需要开TLSv1.1
才会动情况,直接关掉反而可以避免nginx实做TLSv1.1
有问题时的风险(因为用的人少,眼球会比较少,这个协定风险反而比另外两个高)。 - 避免使用已经有风险的技术,像是SHA-1。但因为目前还是有浏览器不支援较新的SHA256(配合AES128)或SHA384(配合AES256),目前还是支援,但优先权尽量排低。
在/etc/nginx/conf.d/ssl.conf
内:
ssl_protocols TLSv1 TLSv1.2; ssl_ciphers "ECDH+AESGCM+AES256:DH+AESGCM+AES256:ECDH+AESGCM:DH+AESGCM:ECDH+AES+SHA384:DH+AES+SHA384:ECDH+AES+SHA256:DH+AES+SHA256:ECDH+AES128:DH+AES128:DHE-RSA-CAMELLIA128-SHA:!3DES:!ADH:!AECDH:!DES:!DSS:!MD5"; ssl_dhparam /etc/ssl/certs/dhparam.pem; ssl_session_cache shared:SSL:30m; ssl_session_timeout 30m;
外部连结
- 官方网站 (英文)