nginx

来自Gea-Suan Lin's Wiki
Gslin讨论 | 贡献2018年4月18日 (三) 03:29的版本 →‎設定
跳到导航 跳到搜索

设定

SSL

跟其他网站上建议的有些差异:

直接关掉TLSv1.1
因为就浏览器安全性来说一定要用TLSv1.2,就浏览器支援度来说则是开TLSv1.1,目前没有看到需要开TLSv1.1才会动情况,直接关掉反而可以避免nginx实做TLSv1.1有问题时的风险(因为用的人少,眼球会比较少,这个协定风险反而比另外两个高)。
调低SHA-1(SHA)优先权:
因为目前还是有浏览器不支援较新的SHA256(配合AES128)或SHA384(配合AES256),所以还是得支援SHA-1,但优先权尽量排低。
试著支援非NIST架构的协定:
目前cipher都是NIST所选出的协定,所以还是多选了Camellia(CAMELLIA128)让使用者可以用。之后会规划ChaCha20+Poly1305。

针对以上的架构,在/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;

外部连结