by Devin Yang

建立於: 8年前 ( 更新: 8年前 )

本文介紹如何調整nginx的ssl設定,讓網站取得SSL報告,取得A+的評比。
這裡我使用的為 letsencrypt 免費憑證。
只要您使用D-Laravel預設的Docker官方nginx新版image,
應該都可以達到跟我一樣的效果。

下方為SSL檢測網址,可用來檢測您主機上的SSL設定:
https://www.ssllabs.com/ssltest/index.html

有圖有真相,先來看看我的結果吧..:),在Nginx上設定非常簡單哦。
ssl a plus rating

以下是我使用在D-Laravel中的ssl完整設定檔,您可以下載參考及自行調整:
完整設定檔ccc-ssl.conf

主要包含了如下的設定:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
ssl_certificate /etc/nginx/conf.d/ssl/fullchain.pem;
ssl_certificate_key /etc/nginx/conf.d/ssl/privkey.pem;
ssl_ciphers  EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:EDH+aRSA:HIGH:!aNULL:!eNULL:!LOW:!RC4:!3DES:!MD5:!EXP:!PSK:!SRP:!SEED:!DSS:!CAMELLIA;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_dhparam /etc/nginx/conf.d/ssl/dhp-512.pem;
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/nginx/conf.d/ssl/chain.pem;

此外,我生成一組512位的 diffie-hellman (迪菲-赫爾曼密鑰交換)參數,以提高某些類型的密碼的安全性。
例如:(4096會花很長的一段時間,您可以使用2048或是我使用512。)

您可以在終端機使用 openssl 指令,產生該檔案
openssl dhparam -out dhp-2048.pem 2048

 

Tags: nginx dlaravel

Devin Yang

文章內容無法一一說明,如果您有什麼不了解處,歡迎提問哦:)

No Comment

Post your comment

需要登入才可留言!

類似的文章


dlaravel

如何在host直接執行容器內,不同Project的php artisan.

本篇為D-Laravel的運用教學,如何在主機端直接執行container內的php artisan. 自訂別名後,就能直接在host端的project資料夾內,直接執行contianer內的php artisan了。 alias a="../../artisan.sh"

dlaravel

如何透過getssl自動檢測及更新let's encrypt發出的憑證

let's encrypt提供免費的憑證真的很棒,不過,三個月要更新一次憑證是不是有點麻煩, 本文介紹,如何透過getssl,產生多域名的SAN憑證設定,放入排程自動進行憑證更新。 非常簡單哦,六個步驟即可搞定。

dlaravel

使用D-Laravel build自己專用的php fpm image。

D-Laravel已提供了Build好的php image,如果需要自己調整及Build自己專用的Image相當簡單。 一、首先在D-Laravel的錄中,進入dockerfiles/fpm,選擇您要Build的PHP版本,例如7.2。 指令如下...