「Nginx」:修訂間差異

出自Gea-Suan Lin's Wiki
跳至導覽 跳至搜尋
本頁面具有訪問限制。如果您看見此訊息,這代表您沒有訪問本頁面的權限。
→‎SSL
行 3: 行 3:
== 設定 ==
== 設定 ==
=== SSL ===
=== SSL ===
  跟其他網站上建議 有些差異
  在<code>/etc/nginx/conf.d/ssl.conf</code>內 設定如下
<pre>
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;
</pre>


這跟其他網站上建議的有些差異:
; 直接關掉<code>TLSv1.1</code>:
; 直接關掉<code>TLSv1.1</code>:
: 因為就瀏覽器安全性來說一定要用<code>TLSv1.2</code>,就瀏覽器支援度來說則是開<code>TLSv1.1</code>,目前沒有看到需要開<code>TLSv1.1</code>才會動情況,直接關掉反而可以避免nginx實做<code>TLSv1.1</code>有問題時的風險(因為用的人少,眼球會比較少,這個協定風險反而比另外兩個高)。
: 因為就瀏覽器安全性來說一定要用<code>TLSv1.2</code>,就瀏覽器支援度來說則是開<code>TLSv1.1</code>,目前沒有看到需要開<code>TLSv1.1</code>才會動情況,直接關掉反而可以避免nginx實做<code>TLSv1.1</code>有問題時的風險(因為用的人少,眼球會比較少,這個協定風險反而比另外兩個高)。
行 11: 行 19:
; 試著支援非NIST架構的協定:
; 試著支援非NIST架構的協定:
: 目前cipher都是NIST所選出的協定,所以還是多選了Camellia(<code>CAMELLIA128</code>)讓使用者可以用。之後會規劃ChaCha20+Poly1305。
: 目前cipher都是NIST所選出的協定,所以還是多選了Camellia(<code>CAMELLIA128</code>)讓使用者可以用。之後會規劃ChaCha20+Poly1305。
針對以上的架構,在<code>/etc/nginx/conf.d/ssl.conf</code>內的設定如下:
<pre>
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;
</pre>


== 外部連結 ==
== 外部連結 ==

於 2018年4月18日 (三) 03:32 的修訂

設定

SSL

/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;

這跟其他網站上建議的有些差異:

直接關掉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。

外部連結